Heim  >  Artikel  >  Backend-Entwicklung  >  So verwenden Sie das externe Schlüsselwort in C/C++

So verwenden Sie das externe Schlüsselwort in C/C++

little bottle
little bottlenach vorne
2019-04-29 10:56:543491Durchsuche

Dieser Artikel stellt die Verwendung des externen Schlüsselworts in C/C++ vor. Er befasst sich hauptsächlich mit der Verwendung von modifizierenden Variablen. , hoffe es hilft dir.

1. Grundlegende Erklärung
extern kann vor einer Variablen oder Funktion platziert werden, um anzuzeigen, dass sich die Definition der Variablen oder Funktion in einer anderen Datei befindet, wodurch der Compiler aufgefordert wird, auf diese Variable zu stoßen oder Funktion Wenn Sie nach ihrer Definition in anderen Modulen suchen. Darüber hinaus kann extern auch zur Verlinkung von Spezifikationen genutzt werden.
extern hat zwei Funktionen: (1) Wenn es zusammen mit „C“ verwendet wird, wie zum Beispiel: extern „C“ void func(int a); weist es den Compiler an, beim Kompilieren der Funktion func die Regeln von C zu befolgen Name. Um den entsprechenden Funktionsnamen anstelle von C++ zu übersetzen. Zu diesem Punkt finden Sie möglicherweise die Antwort im Buch „In-Depth Exploration of the C++ Object Model“. Außerdem gibt es unter Linux eine Backtrace-Funktion, die Stack-Informationen drucken kann, und Sie können die C++-Übersetzung anzeigen Funktionsname (diese Funktion wird in der Muduo-Bibliothek verwendet).
(2) Wenn extern nicht zusammen mit „C“ verwendet wird, um eine Variable oder Funktion zu ändern, z. B. in einer Header-Datei: extern int g_Int; seine Funktion besteht darin, den Bereich einer Funktion oder globalen Variablen zu deklarieren, und seine Deklarierte Funktionen und Variablen können in diesem Modul oder anderen Modulen verwendet werden. Denken Sie daran, dass es sich um eine Deklaration und nicht um eine Definition handelt!
2. Wenn extern Variablen ändert
Die richtige Verwendung ist: Definieren Sie die Variable in der .c-Datei und deklarieren Sie sie in der entsprechenden .h-Datei.
Wir bestimmen, ob es sich um eine Deklaration oder eine Definition handelt, indem wir festlegen, ob der Variablen Speicherplatz zugewiesen wird (streng genommen handelt es sich lediglich um die Zuweisung von Speicher und beinhaltet nicht den Initialisierungsteil). Deklariert oder definiert der Satz int i; Es ist sowohl eine Aussage als auch eine Definition. Wenn wir diesen Satz in der Datei test.h verwenden, tritt ein Neudefinitionsfehler auf, sobald i in anderen Dateien definiert ist (z. B. 1) oder die Datei wiederholt eingefügt wird (z. B. 2).

/*
	e.g.1 	以下为3个文件
*/
//test.h
int i;

//test2.h
int i;

//main.cpp
#include "test.h"
#include "test2.h"
int main()
{
	return 0;
}
rrree

Verwandte Tutorials: C-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo verwenden Sie das externe Schlüsselwort in C/C++. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen
Vorheriger Artikel:Was ist Reflexion in c#?Nächster Artikel:Was ist Reflexion in c#?