teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

追記

2021/11/21 00:20

投稿

thkana
thkana

スコア7735

answer CHANGED
@@ -14,7 +14,10 @@
14
14
  scanf("%d %d", &n, &x);//ここでnを決めても前には波及しない
15
15
 
16
16
  for(int i=1;i<=n;i++){
17
- scanf("%d", a[i]);//a[i]はポインタ型ではない
17
+ scanf("%d", a[i]);//a[i]はポインタ型ではない。a[n]は配列の範囲外
18
18
  b[i] = 0;
19
19
  }
20
- ```
20
+ ```
21
+
22
+ もう一つ追加。
23
+ Cでは要素数Nの配列のインデックス(添字)は0,1,...N-1のN個、ね。配列の範囲外アクセスは「未定義動作」。何が起こっても文句は言えない。

1

編集ミス修正

2021/11/21 00:19

投稿

thkana
thkana

スコア7735

answer CHANGED
@@ -14,7 +14,7 @@
14
14
  scanf("%d %d", &n, &x);//ここでnを決めても前には波及しない
15
15
 
16
16
  for(int i=1;i<=n;i++){
17
- scanf("%d", a[i]);//a[
17
+ scanf("%d", a[i]);//a[i]はポインタ型ではない
18
18
  b[i] = 0;
19
19
  }
20
20
  ```