Ich habe zwei globale Variablen mit dem gleichen Namen in C deklariert. Es sollte einen Fehler geben, da wir Variablen gleichen Namens nicht in derselben Speicherklasse deklarieren können.Deklaration von zwei globalen Variablen mit gleichem Namen in C
Ich habe es in C++ überprüft - es gibt einen Kompilierungsfehler, aber nicht in C. Warum?
Es folgt der Code:
int a;
int a = 25;
int main()
{
return 0;
}
es
Schauen Sie sich an: Code Written at Ideone
ich denke, das wahrscheinlich der Grund ist
Declaration and Definition in C
Aber das ist nicht der Fall in C++ . Ich denke in C++, ob die Variable im globalen Bereich deklariert wird oder im automatischen Bereich die Deklaration und Definition zur gleichen Zeit stattfindet.
Könnte jemand mehr Licht darauf werfen.
Wenn ich jetzt die Variable zwei Mal definiere und den Wert zweimal gebe, gibt es den Fehler (anstelle einer Deklaration und einer Definition).
-Code an: Two definitions now
int a;
int a;
int a;
int a = 25;
int main()
{
return 0;
}
@ H2CO3 .. danke für Ihren Vorschlag, aber ich habe nur versucht zu verstehen, was darin vorging. Aber es gibt eine Situation, in der Sie nicht einmal die Verwendung der globalen Variablen vermeiden können. –