Maison > développement back-end > C++ > Comment puis-je appeler avec succès une fonction C à partir du code C ?

Comment puis-je appeler avec succès une fonction C à partir du code C ?

Barbara Streisand
Libérer: 2024-11-26 12:14:13
original
260 Les gens l'ont consulté

How Can I Successfully Call a C Function from C   Code?

Appel d'une fonction C à partir du code C

Lors de l'intégration de code C et C, il est courant de rencontrer le besoin d'appeler une fonction C depuis dans C. Bien que le "C" externe puisse être utilisé, cette approche peut échouer en raison de problèmes de compilation avec g .

Une solution alternative consiste à compiler le code C séparément en tant que module C (fichier .o) à l'aide de gcc :

gcc -c -o somecode.o somecode.c
Copier après la connexion

Ensuite, compilez le code C séparément :

g++ -c -o othercode.o othercode.cpp
Copier après la connexion

Enfin, liez les deux objets compilés ensemble à l'aide du C linker :

g++ -o yourprogram somecode.o othercode.o
Copier après la connexion

Pour permettre au compilateur C de reconnaître la déclaration de fonction C, incluez le fichier d'en-tête dans othercode.cpp, enveloppé dans un "C" externe :

extern "C" {
#include "somecode.h"
}
Copier après la connexion

L'en-tête le fichier somecode.h doit contenir une déclaration pour la fonction C :

#ifndef SOMECODE_H_
#define SOMECODE_H_

void foo();

#endif
Copier après la connexion

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal