Maison >développement back-end >C++ >Comment réussir à appeler une fonction C à partir du code C ?
Appeler une fonction C à partir de C peut présenter des défis, surtout si l'approche "extern "C" void foo()" échoue en raison aux problèmes de compilation avec g . Pour remédier à cela, une stratégie différente est proposée :
Compilation :
Compilez le code C :
gcc -c -o somecode.o somecode.c
Compilez le C code :
g++ -c -o othercode.o othercode.cpp
Lien :
Liez les fichiers compilés entre eux à l'aide de l'éditeur de liens C :
g++ -o yourprogram somecode.o othercode.o
Inclusion d'en-tête :
Pour informer le compilateur C qu'un en-tête C est inclus, mettez à jour le fichier othercode.cpp avec ce qui suit :
extern "C" { #include "somecode.h" }
somecode.h Fichier d'en-tête :
Créez un fichier d'en-tête (somecode.h) pour déclarer la fonction C :
#ifndef SOMECODE_H_ #define SOMECODE_H_ void foo(); #endif
Remarque :
Ceci La méthode sépare la compilation en étapes C et C, suivie d'une liaison. Le choix du compilateur (gcc dans cet exemple) est flexible, mais le principe reste le même.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!