gpt4 book ai didi

c - 如何在用户键入 "quit"时打破循环?

转载 作者:太空宇宙 更新时间:2023-11-04 05:18:51 29 4
gpt4 key购买 nike

#include <stdio.h>

int main(void) {
char str[100];
int i;
for(;;){
printf( "Enter a value :");
scanf("%s %d", str, &i);
if (str == "quit") break;
printf( "You entered: %s %d\n ", str, i);
}
}

我试图让用户输入字符和整数,然后输出这些值。
我的问题是:如何在用户键入 quitexit 时打破循环?

正确的代码:

#include <stdio.h>
#include <string.h>

int main(void) {
char str[100];
int i;
for(;;) {
printf( "Enter a value :");
scanf("%s %d", str, &i);
if (strcmp(str,"quit") == 0 || strcmp(str,"exit") == 0) break;
printf( "You entered: %s %d\n ", str, i);
}
}

最佳答案

if (str == "quit") break;

条件 str == "quit" 是有问题的部分。它会比较永远不会相同的指针,您应该使用 strcmp 来比较字符串:

if (strcmp(str, "quit") == 0) break;

关于c - 如何在用户键入 "quit"时打破循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21248468/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com