Все мобильные платформы, с которыми я сталкивался до сих пор, имеют C89-совместимые компиляторы, так что это то, что вы хотите использовать для логики основного приложения, если у вас высокие требования по переносимости.
Продукт, над которым я работаю, в настоящее время может быть собран и работать на Android, iPhone, Symbian, Windows Mobile и некоторых других проприетарных платформах (карманные компьютеры Nintendo) и устаревших платформах (PalmOS, OSE), а также на «реальных» машинах Серверы Linux и Solaris).
Конечно, код пользовательского интерфейса должен быть написан специально для каждой платформы, но ядро построено из одного и того же исходного кода для всех целей.