当我在输出上键入hk时,它没有说香港,而是每次都说INPUT ERROR。
char dc,ds[15];
int main(int argc, char *argv[]) {
p("Destination Code: ");
s("%s", &dc);
if(dc=="hk"){
strcpy(ds, "HONG KONG");
}
else{
strcpy(ds, "INPUT ERROR");
}
p("Destination: %s", ds);
return 0;
答案 0 :(得分:2)
这里有两个问题。
您已将dc
声明为char
类型,并尝试读取string
类型。
您不能使用==
来比较两个strings
,而应该使用strcmp
。
示例:
char dc[3];
scanf("%2s", dc);
if(strcmp(dc,"hk") == 0){
strcpy(ds, "HONG KONG");
}
else{
strcpy(ds, "INPUT ERROR");
}