回答編集履歴
1
微修正
answer
CHANGED
@@ -4,12 +4,8 @@
|
|
4
4
|
分かりやすい例としては、`void *memcpy()`は第一引数をそのまま返します。
|
5
5
|
|
6
6
|
`malloc`等は境界調整された値を返します。
|
7
|
-
|
7
|
+
理由は下記に書いてあります。
|
8
8
|
|
9
9
|
[JIS規格書](https://kikakurui.com/x3/X3010-2003-01.html)より:
|
10
10
|
> 7.20.3
|
11
|
-
記憶域管理関数 calloc 関数,malloc 関数及び realloc 関数の連続する呼出しによって割り
|
12
|
-
付けられる記憶域の順序及び隣接性は,未規定とする。割付けが成功したときに返されるポインタは,い
|
13
|
-
かなる型のオブジェクトへのポインタに代入してもよいように,また(領域が明示的に解放されるまで)
|
14
|
-
その割り付けられた領域のオブジェクト又はオブジェクトの配列へのアクセスに使用してもよいように,
|
15
|
-
適切に境界調整されているものとする。
|
11
|
+
記憶域管理関数 calloc 関数,malloc 関数及び realloc 関数の連続する呼出しによって割り付けられる記憶域の順序及び隣接性は,未規定とする。割付けが成功したときに返されるポインタは,いかなる型のオブジェクトへのポインタに代入してもよいように,また(領域が明示的に解放されるまで)その割り付けられた領域のオブジェクト又はオブジェクトの配列へのアクセスに使用してもよいように,適切に境界調整されているものとする。
|