1. ホーム
  2. c

[解決済み】"Expected expression before ' { ' token"(トークンの前に期待される式)。

2022-01-22 21:56:22

質問

そこで、int型配列に値を代入しようとすると、この問題に何度もぶつかります。私はこれを読みました '{' トークンの前に期待される式 しかし、なぜ私のコードにそれが現れるのか、まだ混乱しています。私は、配列の初期化および宣言が正しくなく、それが私の問題を引き起こしているような気がします。

そこで、main()の前に、いくつかのグローバル変数のグループを宣言しています(そう、これは危険だとわかっていますが、私の目的には必要なのです)。そのグローバル変数のグループで、サイズ3のダブル配列も宣言したいと思います。

double rob_size, rob_tilt;
double rob_leftcolor [3];
double rob_rightcolor [3];

そして、main関数で、変数と配列を初期化しています。

rob_size = 1.0;
rob_tilt = 0.0;
rob_leftcolor [3] = {1.0, 0.0, 0.0}; 
rob_rightcolor [3] = {0.0, 1.0, 0.0};

しかし、私はエラーメッセージ "Expected expression before ' { ' token" at が表示されます。

まず、このエラーメッセージはどういう意味なのでしょうか?次に、このメッセージが出るのは、配列の初期化や宣言が正しくないからでしょうか?

ありがとうございます

解決方法は?

宣言時にイニシエーションを行うのがベストです。

double rob_size = 1.0;
double rob_tilt = 0.0;
double rob_leftcolor [3] = {1.0, 0.0, 0.0}; 
double rob_rightcolor [3] = {0.0, 1.0, 0.0};

配列のみ 必要 がありますが、すべて同じ方法で行うのがベストです。

代替案は

rob_leftcolor[0] = 1.0;
rob_leftcolor[1] = 0.0;
rob_leftcolor[2] = 0.0;