Wow is this (free!) app amazing: Google Translate for iOS (iPhone, iPod touch and iPad, also available as a Android app)

Once installed, tap the microphone icon and simply speak the word or phrase you'd like to translate. It then brings back the translated text which you can then show to someone on your iPhone or press the speaker icon to have it speak the phrase for you. If you turn the phone to landscape mode, it gives you a large version of the text to make it easier to show someone:

You can save, or star, phrases that you use more often so that if you don't have a internet connection you can still use the app to communicate key phrases.

Via daringfireball.net

Google Translate for iPhone