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

回答編集履歴

2

追記しました

2019/01/17 11:15

投稿

myoon
myoon

スコア100

answer CHANGED
@@ -1,3 +1,3 @@
1
1
  c++ですと、C言語との互換性のために残されているにすぎないマクロのNULLよりは、nullptrを使った方が良いと思います。
2
- c++としてコンパイルした場合、NULLは通常0に展開されますが(C言語としてコンパイルした場合は(必ずではないですが)((void*)0) が多い)、これはint型ですのでポインター型とサイズが異なる処理系ではうまくいかないかもしれません。
2
+ c++としてコンパイルした場合、NULLは通常0に展開されますが(C言語としてコンパイルした場合は(必ずではないですが)((void*)0) が多い)、これはint型ですのでポインター型とサイズが異なる処理系ではうまくいかないかもしれません。関数の実引数では関数のプロトタイプがあるのでこの質問の場合は問題ありませんが、NULLを使う癖があるのはお勧めできないです。
3
3
  ググるとNULLを使うコードが多いのが疑問です。

1

理由を追記

2019/01/17 11:15

投稿

myoon
myoon

スコア100

answer CHANGED
@@ -1,1 +1,3 @@
1
- c++ですと、C言語との互換性のために残されているにすぎないマクロのNULLよりは、nullptrを使った方が良いと思います。
1
+ c++ですと、C言語との互換性のために残されているにすぎないマクロのNULLよりは、nullptrを使った方が良いと思います。
2
+ c++としてコンパイルした場合、NULLは通常0に展開されますが(C言語としてコンパイルした場合は(必ずではないですが)((void*)0) が多い)、これはint型ですのでポインター型とサイズが異なる処理系ではうまくいかないかもしれません。
3
+ ググるとNULLを使うコードが多いのが疑問です。