Was ist die Standardspeicherklasse einer globalen Variablen?Was ist die Standardspeicherklasse für globale Variablen?
Bei der Suche im Internet habe ich festgestellt, einige Websites sagen, es ist static
. Statisch bedeutet jedoch eine interne Verknüpfung, und die Variable kann außerhalb des Dateibereichs nicht verfügbar sein, d. H. Sie sollte nicht für andere Objektdateien verfügbar sein. Aber sie können weiterhin auf andere Dateien mit Deklarationen wie extern int i
zugegriffen werden.
Und, wenn ich explizit static
zu globalen Variable erwähnen, dann ist es nicht außerhalb des Dateibereichs verfügbar.
Dann, was ist die richtige Standardspeicherklasse für die globalen Variablen?
aber um eine interne Verbindung zu haben, definieren wir global als 'static int i' und wenn die Standardspeicherklasse einer globalen Variable statisch ist, dann würde ihre Definition wie' static int i' aussehen, was eine interne Verbindung bedeutet. –
Wie gesagt, die Standardverknüpfung ist extern. Der Standardwert von static gilt nur für die Dauer. –
Um einen anderen Schlüssel in die Arbeit zu werfen: in C++ haben konstante Objekte standardmäßig interne Verknüpfung. –