Heim  >  Artikel  >  Backend-Entwicklung  >  Kann GCC Array-Größen mit nicht konstanten Variablen deklarieren?

Kann GCC Array-Größen mit nicht konstanten Variablen deklarieren?

DDD
DDDOriginal
2024-10-31 22:57:29223Durchsuche

Can GCC Declare Array Sizes with Non-Constant Variables?

Array-Größe mit nicht konstanter Variable deklarieren: Eine GCC-Erweiterung

Trotz des allgemeinen Verständnisses, dass Array-Größendeklarationen in C konstante Ganzzahlwerte erfordern wurde beobachtet, dass bestimmter Code, wie zum Beispiel:

<code class="cpp">int ArraySize = 5;
int MyArray[ArraySize];</code>

in einigen Umgebungen erfolgreich kompiliert werden kann. Diese Ausnahme ergibt sich aus einer GCC-Erweiterung.

Gemäß den C-Richtlinien sollte die Array-Grenze ein konstanter Ausdruck sein. Auch die Erklärung aus „The C Programming Language“ von Bjarne Stroustrup untermauert diese Annahme. Allerdings erlaubt GCC als Erweiterung des Standards die Verwendung nicht konstanter Variablen für Array-Größendeklarationen.

Für diejenigen, die Portabilität priorisieren, wird empfohlen, die Option „-pedantic“ zu verwenden, um eine entsprechende Warnung zu erhalten Erweiterungen. Alternativ kann „-std=c 98“ verwendet werden, um es als Fehler zu behandeln und die Einhaltung des Standards sicherzustellen.

Das obige ist der detaillierte Inhalt vonKann GCC Array-Größen mit nicht konstanten Variablen deklarieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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