任何时候我在程序中运行这个函数
void treeInput(){
char temp;
int x, tempRow, tempColm;
while(x=0){
scanf(" %c ", &temp);
if(temp == 'Q'){
x=1;
} else if(temp == 'A'){
for(int i = 0; i<TEMP; i++){
for(int j = 0; j<TEMP; j++){
forest[i][j] = 'T';
}
}
} else if (temp == 'T'||'E'){
scanf("%d", &tempRow);
scanf("%d", &tempColm);
forest[tempRow][tempColm] = temp;
}
}
}
它跳过了 scanf ,使函数的其余部分无效,并且不知道如何使其工作
我尝试在 scanf 中的 %c 之前添加一个空格,但这不起作用,它仍然会跳过它
temp == 'T'||'E'
相当于
temp == ('T'||'E')
当
||
的左侧大小为非零数字(如此处的情况)时,其计算结果为 1
。所以上面相当于
temp == 1
你想要
temp == 'T' || temp == 'E'