Heim > Backend-Entwicklung > C++ > Wie kann ich eine C-Funktion erfolgreich aus C-Code heraus aufrufen?

Wie kann ich eine C-Funktion erfolgreich aus C-Code heraus aufrufen?

Mary-Kate Olsen
Freigeben: 2024-12-02 10:37:11
Original
686 Leute haben es durchsucht

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

Aufrufen einer C-Funktion aus dem C-Code heraus

Beim Versuch, eine C-Funktion aus C aufzurufen, kann es beim „extern „C“ foo()“-Ansatz zu einer Kompilierung kommen Probleme mit g . Um diese Herausforderung zu umgehen und die C-Funktion erfolgreich auszuführen, kann der folgende Ansatz verwendet werden:

  1. Kompilieren Sie den C-Code separat mit dem Befehl:
gcc -c -o somecode.o somecode.c
Nach dem Login kopieren
  1. Kompilieren Sie den C-Code separat, und zwar auf die gleiche Weise:
g++ -c -o othercode.o othercode.cpp
Nach dem Login kopieren
  1. Verknüpfen Sie beide kompilierten Objekte mithilfe des C miteinander Linker:
g++ -o yourprogram somecode.o othercode.o
Nach dem Login kopieren
  1. Um den C-Compiler über einen eingehenden C-Header zu informieren, der die C-Funktionsdeklaration enthält, beginnen Sie Ihre othercode.cpp-Datei mit dem folgenden Code:
extern "C" {
#include "somecode.h"
}
Nach dem Login kopieren
  1. Stellen Sie sicher, dass Ihre Datei „somecode.h“ eine ähnliche Deklaration enthält zu:
#ifndef SOMECODE_H_
#define SOMECODE_H_

void foo();

#endif
Nach dem Login kopieren

Beachten Sie, dass Sie einen Compiler Ihrer Wahl verwenden können, solange Sie dem Prinzip folgen, den C- und C-Code getrennt zu kompilieren und sie anschließend miteinander zu verknüpfen.

Das obige ist der detaillierte Inhalt vonWie kann ich eine C-Funktion erfolgreich aus C-Code heraus aufrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage