Objective C - это чистый супернабор простого ANSI C. Вы можете просто вставить любой чистый код C в любой файл Objective C .m. (Обратное не будет работать, потому что компилятор не будет знать, как скомпилировать файл .c с использованием языкового надмножества.)
Добавлено: способ сделать это наоборот - не пытаться напрямую поместить Objective C в файл C, а поместить Objective C в новый файл Objective C .m с функцией-оберткой C, чтобы вызвать это. Метод Objective C также в этом .m файле. Затем используйте вызов функции C в файле C для вызова этого файла C в функцию-обертку C файла Objective C, и пусть эта функция-обертка C в файле Objective C вызывает метод Objective C.
Большинство вызовов posix на C нормально работают на iPhone, хотя некоторые являются незаконными, если они пытаются выйти за пределы изолированной программной среды безопасности (например, вам, возможно, придется использовать немного Objective C, чтобы определить, какие допустимые пути к файлам вызывают вызов posix fopen () можно использовать.)
Я взял большие приложения на C и упаковал их в достаточно Objective C, чтобы связать их с платформой Cocoa Touch UI. Несколько страниц стоит.