回答編集履歴
2
typo
test
CHANGED
@@ -14,6 +14,6 @@
|
|
14
14
|
|
15
15
|
|
16
16
|
|
17
|
-
なお、文字列は最後に0が付いてます。つまり、"123456789"は最後に0があるので全部10バイトあります。
|
17
|
+
なお、文字列は最後に0が付いてます。つまり、"123456789"は最後に0があるので全部で10バイトあります。
|
18
18
|
|
19
19
|
最後の0(NULL終端)の存在を忘れないように。
|
1
typo
test
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
`char str2[] = {0};`はstr2の領域としてchar型を1つだけ確保し、0で初期化する指示になってます。
|
8
8
|
|
9
|
-
つまり、str2は1バイトしか領域が確保されていません。そこに9バイトをコピーしてますので、8バイト
|
9
|
+
つまり、str2は1バイトしか領域が確保されていません。そこに9バイトをコピーしてますので、残りの8バイトはstr2でない他のエリアを破壊しています。
|
10
10
|
|
11
11
|
そのような操作をすると、どのような結果になるのか未定義なのです。
|
12
12
|
|