-1

以下に示す 2 つの const char* コードを比較しようとしています。

void compare(const char *name){
             const char *name1;

             if(!strcmp(*name,*name1){
                  printf("true");
             }
}

エラー: 'char' から 'const char *' への無効な変換 助けが必要です。

4

3 に答える 3

7
if(!strcmp(name,name1))

-- あなたの変数namename1すでにポインターです。

ただし、それだけでは魔法のように機能するわけではありません。の初期化されていない値と比較するのはなぜname1ですか?

于 2013-07-21T01:02:40.663 に答える
1

strcmp への引数は、char ではなく char へのポインターでなければならないため、既に持っているポインターを無視しないでください。

  if (!strcmp(name,name1)) { 
于 2013-07-21T01:03:24.160 に答える