You can check the return value of mail() (true or false), but even true is not a real "true" :-) Because email could be sent but not received, i.e. email could seem 'OK', receipient host "OK" but other delivery error may occur: user not known, mail box full, etc.
If you don't care if the email is REALY delivered, but just want to know if the mail is just "sent", check mail() return value.
I would suggest using email_validation class from ..mmmm... phpclasses.upperdesign.com before sending email. Check it out.
Otherwise, there is no procedural way to check this (immediate delivery status check). Here you must go to crons, procmail receipts, etc.
Huh.. hope this helps.