Maison > développement back-end > C++ > le corps du texte

Comment corriger les erreurs de l'éditeur de liens lors de l'appel de fonctions C à partir d'un projet C dans Visual Studio ?

DDD
Libérer: 2024-10-27 14:29:01
original
938 Les gens l'ont consulté

How to Fix Linker Errors When Calling C Functions from a C   Project in Visual Studio?

Erreur de liaison lors de la tentative d'appel d'une fonction C à partir du code C dans un projet différent

Ce problème se produit lorsque vous tentez d'inclure du code C dans un Projet C dans différents projets Visual Studio 2010 (ou n'importe quelle version). Les étapes suivantes peuvent vous aider à résoudre cette erreur :

1. Organiser les fichiers d'en-tête et source

Pour plus de clarté et de modularité, assurez-vous que chaque fonction C dispose d'un fichier d'en-tête et d'un fichier source dédiés.

2. Fichier d'en-tête (functions.h)

  • Supprimez le spécificateur externe pour chaque fonction.
  • Définissez la logique d'exportation à l'aide de macros pour déterminer s'il faut marquer les fonctions comme exportées ou importées.

Exemple :

<code class="c">#define FUNCTIONS_EXPORTS
#include "functions.h"

char *dtoa(double, int, int, int*, int*, char**);
char *g_fmt(char*, double);
void freedtoa(char*);</code>
Copier après la connexion

3. Fichier source (functions.c)

  • Définir une macro pour indiquer que les fonctions sont exportées.
  • Inclure le fichier d'en-tête et implémenter les fonctions.

Exemple :

<code class="c">#define FUNCTIONS_EXPORTS
#include "functions.h"

char *dtoa(double, int, int, int*, int*, char**)
{
    // Function implementation
}</code>
Copier après la connexion

4. Paramètres d'exportation du projet

  • Dans les paramètres de Visual Studio, configurez le projet qui inclut le fichier d'en-tête pour définir la macro FUNCTIONS_EXPORTS. Cela garantit que les fonctions sont marquées comme importées.

5. Paramètres de l'éditeur de liens

  • Pour le projet qui définit la macro FUNCTIONS_EXPORTS, assurez-vous que l'éditeur de liens est configuré pour inclure la bibliothèque générée à partir de l'autre projet contenant les fonctions.

En suivant ces étapes, vous pouvez réussir à mélanger le code C et C dans différents projets et résoudre l'erreur de l'éditeur de liens liée à l'appel de la fonction g_fmt.

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!

source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!