皆さん色々書いていますが,要は型が違うだけです。値はどれも同じです。 NULL ← void* 型 0 ← int 型 '\0' ← char 型 C言語では型の違いを意識することはあまりないけど,C++では重要になる ことがあります。 それから,C++ではNULLがint型になっています。 理由を聞いた事があるけど…,忘れてしまったww (追記) >petit_saintさん >となると、0と'\0'の違いは、int型で「0」を表す場合に0、 >char型で「0」を表す場合に\0(終端を意味する)となりますね。 ふふふ。 この辺りは,C言語を勉強したての頃は,間違えやすいですよね。 この場合はあまり深く考え無くても,単純に型が違うという ことでOKです。 >C言語でも型の意識はしますよ。とても。浮動小数点演算するときにintでやりませんよね? 言葉足らずでした。確かに浮動小数点か整数型か