Objective C est un surensemble pur de plaine ANSI C. Vous pouvez simplement laisser tomber tout code C pur dans tout Objective C fichier .m . (Le contraire ne fonctionnera pas parce que le compilateur ne saura pas compiler un fichier .c en utilisant le surensemble de langage.)
Ajouté: La manière de faire l'inverse n'est pas d'essayer et de mettre directement l'Objective C dans un fichier C, mais pour mettre l'Objective C dans un nouveau fichier Objective C .m avec une fonction C wrapper pour appeler également cette méthode Objective C dans ce fichier .m. Utilisez ensuite un appel de fonction C dans le fichier C pour appeler à partir de ce fichier C vers la fonction d'encapsuleur C du fichier Objective C et faites appel à la fonction Objective C dans la fonction C wrapper du fichier Objective C. La plupart des appels C posix fonctionnent normalement sur l'iPhone, bien que certains soient illégaux s'ils tentent d'atteindre l'extérieur du sandbox de sécurité (par exemple, vous devrez utiliser un peu d'Objective C pour déterminer le chemin légal du posix fopen() appel peut utiliser.)
J'ai pris de grandes applications C et les ai enveloppées dans juste assez d'Objective C pour les connecter avec le cadre Cocoa Touch UI. Quelques pages valent la peine.
Il devrait évidemment être possible d'utiliser le code c dans l'objectif-c. Mais nous voulons le faire dans l'autre sens. – user299831
Vous voulez appeler le code Objective-C de C? – Jeff
Voir ma réponse sur comment appeler Objective C à partir de C. Il requiert un fichier Objective C .m séparé et une fonction auxiliaire C ANSI dans ce fichier. – hotpaw2