我无法使输入/输出正常工作。请帮忙。
这是我的代码......
char choice1;
printf("This is a text game! You will be shown what is going on");
printf("\nand it is up to you to decide what to do.");
printf("\n\nThere is a gem on the ground.");
printf("\nWhat do you want to do");
printf("\n>");
scanf("%c", &choice1);
if (choice1 == pick up gem) {
printf("Got Gem");
}
答案 0 :(得分:3)
%c
用于输入单个字符,而不是字符串。如果您想允许用户输入多个字符,那么您需要以下内容:
char string[256];
fgets(string, 255, stdin);
if (strcmp(string, "pick up gem\n") == 0) {
printf("Got Gem");
}
BTW - 这不是Objective-C,这是C。
如果用户输入超过256个字符,则会发生不好的事情。
更新:事实证明scanf
只抓取输入的第一个字。使用fgets
读取换行符。