2166 Stimmen

Was bewirkt extern "C" in C++?

Was bewirkt das Einfügen von extern "C" in C++-Code genau?

Zum Beispiel:

extern "C" {
   void foo();
}

119 Stimmen

Ich möchte Ihnen diesen Artikel vorstellen: http://www.agner.org/optimize/calling_conventions.pdf Er erzählt Ihnen viel mehr über Aufrufkonventionen und die Unterschiede zwischen Compilern.

-2voto

Aryaman Gupta Punkte 639

Beziehen Sie sich auf den unten stehenden Link, der die Verwendung von extern "C" bei Geeks for Geeks erklärt. Fügen Sie wichtige Informationen von der Seite unten hinzu.

Betrachten Sie die folgenden Deklarationen der Funktion f()

int  f (void) { return 1; }
int  f (int)  { return 0; }
void g (void) { int i = f(), j = f(0); }

Ein C++ Compiler kann die obigen Namen wie folgt umwandeln (Quelle: Wiki)

int  __f_v (void) { return 1; }
int  __f_i (int)  { return 0; }
void __g_v (void) { int i = __f_v(), j = __f_i(0); }

https://www.geeksforgeeks.org/extern-c-in-c/

1 Stimmen

Während der Link möglicherweise die Frage beantwortet, verlangen die Regeln, dass Antworten eigenständig sind, falls der Link nicht mehr funktioniert. Können Sie die Hauptpunkte aus dem Link zu Ihrer Antwort hinzufügen? Siehe stackoverflow.com/help/how-to-answer

0 Stimmen

@HolyBlackCat, Werde das Notwendige tun.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X