Check out the website for the line you want to send mail to. Most websites have a snailmail address that you can send crew mail, letters and packages to. I have heard that certain lines have weight and size restrictions, so keep that in mind before you sail. Also, crew cabins are very tight, so keep that in mind, too
once you get on the ship, ask to see what the 'best way' is
On my line, totally depends on the run. If envelopes, we use a Miami PO box, if a package, the street address of our head office as the package gets accepted by the mailroom and there's a 'proof of signature'. I ebay'ed a laptop when I was on the Radiance during an Alaska run and had it shipped to the port agent in Juneau. Due to my job, I had a good working relationship with him and was able to give him a heads up when the UPS shipping notice came thru it was arriving and he hand delivered it to the ship 8)
Many crewmembers, if they know they'll be on the same run for a stretch, will rent a mailbox at a Mailboxes Etc store or similar, or even get a mailbox at the closest US post office if us ports are in the run (like St Thomas in the V.I's)
Ships notoriously "lose" mail - so make sure your present is sent with delivery confirmation
BTW - port agents and their contact info is a good thing to know. They and their companies are the ships agent and help, native to whatever port you're in. They'll get you to your ship when you sign off and on, looks for and deliver parts for the marine department, take crewmembers to medical appts, get anything and everything and anyone on and off the ship. If you ever "miss" your ship in a port, they're the person to contact to help you, passenger or crew.
yeah you can send them(the people you know in the cruiseship) snail mail and even packages, ask the address from the purser or the HR in the cruiseline. Well in crystal cruises its like that dont know about the other cruislines.