回答編集履歴
2
表現を修正
answer
CHANGED
@@ -13,6 +13,4 @@
|
|
13
13
|
|
14
14
|
そして、後ろの方の要素のメモリアドレスのほうが、先頭の要素のメモリアドレスよりも大きいので、引き算の順序は`p - ch`ということになります。
|
15
15
|
|
16
|
-
同じ配列の2つの要素のメモリアドレスの値を引き算
|
16
|
+
同じ配列の2つの要素のメモリアドレスの値を引き算すると、2つの要素の添え字の差が得られます。このプログラムでは、先頭を「1番目」と表示するために、さらに1を加えています。
|
17
|
-
|
18
|
-
補足: sizeof(char)をわざわざ書いているのは、(このプログラムが学習用のものだとすると)「char以外のデータを扱うときのヒント」ではないですかね。intやdoubleの配列ではsizeof(int)やsizeof(double)で割って要素数などを求めることになります。
|
1
補足を追加
answer
CHANGED
@@ -13,4 +13,6 @@
|
|
13
13
|
|
14
14
|
そして、後ろの方の要素のメモリアドレスのほうが、先頭の要素のメモリアドレスよりも大きいので、引き算の順序は`p - ch`ということになります。
|
15
15
|
|
16
|
-
同じ配列の2つの要素のメモリアドレスの値を引き算し、1個あたりのサイズで割ると、2つの要素の添え字の差が得られます。このプログラムでは、先頭を「1番目」と表示するために、さらに1を加えています。
|
16
|
+
同じ配列の2つの要素のメモリアドレスの値を引き算し、1個あたりのサイズで割ると、2つの要素の添え字の差が得られます。このプログラムでは、先頭を「1番目」と表示するために、さらに1を加えています。
|
17
|
+
|
18
|
+
補足: sizeof(char)をわざわざ書いているのは、(このプログラムが学習用のものだとすると)「char以外のデータを扱うときのヒント」ではないですかね。intやdoubleの配列ではsizeof(int)やsizeof(double)で割って要素数などを求めることになります。
|