Heim > Backend-Entwicklung > C++ > Wie behebe ich den Syntaxfehler „Ausdruck muss einen konstanten Wert haben' beim Deklarieren von Arrays in C?

Wie behebe ich den Syntaxfehler „Ausdruck muss einen konstanten Wert haben' beim Deklarieren von Arrays in C?

Linda Hamilton
Freigeben: 2024-12-10 06:40:21
Original
881 Leute haben es durchsucht

How Do I Fix a

Fehlerbehebung: Syntaxfehler bei der Array-Deklaration

Beim Versuch, ein Array aus deklarierten Variablen zu erstellen, kann der Fehler auftreten:

expression must have a constant value
Nach dem Login kopieren

Dieser Fehler tritt auf, weil Arrays in C für sie konstante Ausdrücke benötigen Größen.

Fehler beheben

Um diesen Fehler zu beheben, haben Sie zwei Möglichkeiten:

  1. Erstellen Sie ein dynamisches Array auf der Heap:

Dynamische Arrays ermöglichen eine variable Größenanpassung durch Zuweisung Speicher auf dem Heap. Sie müssen diesen Speicher jedoch manuell mit den Operatoren new und delete zuweisen und freigeben:

// Allocate the array
int** arr = new int*[row];
for (int i = 0; i < row; i++)
    arr[i] = new int[col];
Nach dem Login kopieren
// Use the array
// ...

// Deallocate the array
for (int i = 0; i < row; i++)
    delete[] arr[i];
delete[] arr;
Nach dem Login kopieren
  1. Array-Größe als Konstante deklarieren:

Um ein Array mit fester Größe beizubehalten, müssen Sie die Dimensionen als deklarieren Konstante:

const int row = 8;
const int col = 8;
int arr[row][col];
Nach dem Login kopieren

Vorsichtsmaßnahmen

Die von Ihnen angegebene Syntax int [row][col]; ist falsch, da sie keinen Variablennamen für angibt Array.

Das obige ist der detaillierte Inhalt vonWie behebe ich den Syntaxfehler „Ausdruck muss einen konstanten Wert haben' beim Deklarieren von Arrays in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage