“subscripted value is neither array nor pointer” というエラーメッセージは、配列のようにインデックスでアクセスしようとした変数が、配列やポインタのいずれでもない場合に表示されます。
例えば、次のようなコードを書いたとします。
int x; x[0] = 5;
このコードでは、変数 x
を配列のようにインデックス 0
でアクセスしようとしています。しかし、x
は配列でもポインタでもないため、このコードは “subscripted value is neither array nor pointer” というエラーを引き起こします。
正しいコードは、次のようになります。
int x; x = 5;
この場合、変数 x
に値 5
を代入しているだけで、配列やポインタといったデータ構造を使っていないので、このコードはエラーを引き起こしません。
コメント