回答編集履歴

2

質問の修正を元に

2021/11/01 11:33

投稿

pepperleaf
pepperleaf

スコア6385

test CHANGED
@@ -7,3 +7,11 @@
7
7
  第一引数が、 `char *`で、戻り値が`long` これに対し、~~同じ `arrayi[i][j][k]` を与えてる時点で不適切。 ~~
8
8
 
9
9
  よく見ると、`array` と `arrayi` で違った。すみません。
10
+
11
+
12
+
13
+ -------------
14
+
15
+ 改めてみると、 `array[][][]` は `char *`で定義されているけど、実体(実際の文字列を入れる領域)が無いみたいです。それを確保しないとダメでしょう。(書かれてないところにある?)
16
+
17
+ 例えば、`char array[ex][ey][3][50];`とか。ただ、単純にそうしても ex,ey のサイズ次第でエラーになるかも。

1

訂正

2021/11/01 11:33

投稿

pepperleaf
pepperleaf

スコア6385

test CHANGED
@@ -4,4 +4,6 @@
4
4
 
5
5
  `strtol()`の宣言を見ると、`long strtol(const char *s, char **endptr, int base);`
6
6
 
7
- 第一引数が、 `char *`で、戻り値が`long` これに対し、同じ `arrayi[i][j][k]` を与えてる時点で不適切。
7
+ 第一引数が、 `char *`で、戻り値が`long` これに対し、~~同じ `arrayi[i][j][k]` を与えてる時点で不適切。 ~~
8
+
9
+ よく見ると、`array` と `arrayi` で違った。すみません。