ホームページ >バックエンド開発 >C++ >C で配列を宣言する際の「式には定数値が必要です」という構文エラーを修正するにはどうすればよいですか?

C で配列を宣言する際の「式には定数値が必要です」という構文エラーを修正するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-10 06:40:21826ブラウズ

How Do I Fix a

トラブルシューティング: 配列宣言の構文エラー

宣言された変数から配列を作成しようとすると、次のエラーが発生する場合があります:

expression must have a constant value

このエラーは、C の配列には定数式が必要であるために発生します。

エラーの解決

このエラーを解決するには、次の 2 つのオプションがあります。

  1. 上に動的配列を作成するのヒープ:

動的配列では、ヒープにメモリを割り当てることで可変サイズが可能です。ただし、new 演算子と delete 演算子を使用して、このメモリの割り当てと割り当て解除を手動で行う必要があります:

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

// Deallocate the array
for (int i = 0; i < row; i++)
    delete[] arr[i];
delete[] arr;
  1. 配列サイズを定数として宣言:

固定サイズの配列を維持するには、次のように次元を宣言する必要があります。 constant:

const int row = 8;
const int col = 8;
int arr[row][col];

注意

指定した構文 int [row][col]; は、変数名を指定していないため、正しくありません。配列。

以上がC で配列を宣言する際の「式には定数値が必要です」という構文エラーを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。