gpt4 book ai didi

c - 获取c中包含空格的单词

转载 作者:行者123 更新时间:2023-11-30 20:38:03 26 4
gpt4 key购买 nike

我需要从用户那里获取包含空格的单词,正如我在标题中用结构语句表达的那样。

例如:

#include <stdio.h>

struct knowledge
{
char name[30];
}person;


int main()
{
scanf("%s",person.name);
printf("\n\n%s",person.name);
}

当我运行这个程序并输入“句子”之类的句子时,没有问题。它再次向我展示了“句子”。但是,当我输入“句子 aaa”时,它只显示第一个单词(“句子”)。这是怎么回事?为什么它没有显示我输入的全部内容(“句子 aaa”)?

最佳答案

代替scanf()使用

fgets(person.name,sizeof(person.name),stdin);

使用 scanf() 读取字符串始终是一个坏主意。最好的选择是使用 fgets() 使用它可以避免缓冲区溢出。

PS:fgets()带有换行符

关于c - 获取c中包含空格的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30737450/

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