所以我是c的新手,我对此代码有两个问题:
#import <stdio.h>
int main(){
char answer;
int playerX = 0;
int playerY = 0;
int done = 0;
char direction[] = "none";
while (done == 0){
printf("Direction:\n");
a = getchar();
if (answer == "u"){
playerY += 1;
} else{
}
printf("Your current position is: %d,%d\n", playerX, playerY);
}
return 0;
}
方向:
ü
您当前的位置是:0,0
方向:
您当前的位置是:0,0
方向:
答案 0 :(得分:1)
首先,我假设你有#34; #include&#34;而不是&#34; import&#34;在第1行,&#34;回答&#34;而不是&#34; a&#34;在第12行。
要回答你的实际问题,在C char和string中是不同的。你有一个char类型的变量答案,你正在与字符串&#34; u&#34;进行比较。结果,编译器正在创建一个常量字符串&#34; u&#34;并将指向该字符串的指针与char类型变量answer进行比较。您的支票应该是
if(answer == 'u') {