我必须让用户输入一个单词,例如' Meal'。 此外,我必须有特定的参数(单词),如膳食,饮料,...我必须与用户输入的单词进行比较。 我不知道我怎么能比较这个单词,这对我来说是一个完整的单词列表。 在下面的例子中,我认为程序崩溃了:
char listing[3];
listing[0]="Meal";
listing[1]="Drink";
listing[2]='\0';
我必须将此列表与输入的单词进行比较:
char option;
printf("Please insert your option");
scanf("%s", &option);
也许我的名单错了?我只是试图将它在我的函数中与if进行比较,但它不起作用:
if ((option==listing[0]) ||
(option==listing[1]))
如果我用例如" Meal"声明列表它说 警告:赋值在没有强制转换的情况下从指针生成整数[默认情况下启用] |
感谢您的帮助,我很遗憾找不到解决方案,对我感到羞耻。 格尔茨
答案 0 :(得分:0)
而不是if ((option==listing[0]) || (option==listing[1]))
,请使用strcmp
:
if( (0 == strcmp(option, listing[0])) || ( 0 == strcmp(option, listing[1])) )
此外,listing
应该是指向char的指针数组。
char *listing[2];
listing[0]="Meal";
listing[1]="Drink";