More often than not, "can" and "may" are used interchangeably in speaking and writing. So today, let's look at how they should be used.
"Can" is used to express someone's ability to do something.
He can cook spaghetti for dinner tonight. (He is able to cook spaghetti.) "May" is used to express possibility or permission. He may cook spaghetti for dinner tonight. (It is possible he will cook spaghetti./He has permission to cook spaghetti.)
Both can and may are often used to request permission.
"Can/May I go to the mall tonight with my friends?"
"Yes you can/may."