1. ホーム
  2. c

[解決済み] ポインタと整数の警告比較

2022-02-08 16:40:43

質問

文字ポインタを反復処理し、ポインタがヌル末端に達したときにチェックすると、警告が表示されるのですが。

 const char* message = "hi";

 //I then loop through the message and I get an error in the below if statement.

 if (*message == "\0") {
  ...//do something
 }

というエラーが出ています。

warning: comparison between pointer and integer
      ('int' and 'char *')

と思ったのですが * の前にある message はメッセージを参照しないので、メッセージが指している場所の値を取得するのですか?私は、ライブラリ関数 strcmp ちなみに

解決方法は?

それは

if (*message == '\0')

C言語では、単純な引用符は1文字を区切るのに対し、二重引用符は文字列を区切ります。