gpt4 book ai didi

c - c语言获取和检查字符串

转载 作者:太空狗 更新时间:2023-10-29 15:28:45 24 4
gpt4 key购买 nike

我尝试编写程序来扫描来自用户的字符串,并检查用户输入的内容,如果是真的,则做某事,如果不是,则做其他事。我写的代码是这样的:

#include<stdio.h>
#include<conio.h>

int main()
{
char string[20];
printf("Enter a sentence : ");
scanf("%s",&string);
if(strcmp(string,"what's up")==0)
printf("\nNothing special.");
else
printf("\nYou didn't enter correct sentence.");
getch();
return 0;
}

但它不能正常工作。我认为是因为程序在要扫描时无法识别空间。我该怎么办?(我是 c 的新手,所以请解释你做了什么。)

最佳答案

%s 格式说明符不能用于扫描带空格的字符串。

你需要使用fgets()

size_t n;
fgets(string,sizeof(string),stdin);
n = strlen(string);
if(n>0 && string[n-1] == '\n')
string[n-1] = '\0';

PS: fgets()自带一个换行符,所以需要轻轻的去掉,如上所示

关于c - c语言获取和检查字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33144562/

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