警告:指针和整数之间的比较。如果语句

Warning: comparison between pointer and integer. If statement

我不明白为什么这个存储用户答案的​​简单代码会返回此错误。

下面是我的代码:

//INPUT TRY 0
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//setting game:
char q_ai;      //want to play against ai? question about ai.


int main(void)
{   

    printf("Do you want to play vs AI? \n   Y/N? \n ");
    scanf("%c",q_ai);       
    printf("q_ai == %c\n",q_ai);
    printf("sizeof(q_ai): %d",sizeof(q_ai));
    
    if(q_ai=="y") {
        printf("you will play against AI");
    }
    
    if(q_ai=="n") {
        printf("you will play 1v1");
    }
    
    
}

我该如何解决这个问题?谢谢

您现在所拥有的是将字符与指向字符串的指针("y""n")进行比较。您需要将字符 q_ai 与字符('y''n')进行比较。

if(q_ai=='y') {
    printf("you will play against AI");
}

if(q_ai=='n') {
    printf("you will play 1v1");
}