gpt4 book ai didi

c - 我无法输入带空格的字符串

转载 作者:太空宇宙 更新时间:2023-11-04 04:09:37 25 4
gpt4 key购买 nike

我正在编写一个程序,我需要用户输入这样一行 (1, Stelios, 1.81, Greece)。

我首先想到的是使用 gets() 因为我想接受空格输入。在几次尝试编译它但没有成功之后,我读到它由于危险而从 C-11 中删除。

接下来我做的是使用 scanf()fgets() 但它会跳过输入,就像它们从未存在过一样,似乎没有任何效果。

#include <stdio.h>
#include <stdlib.h>

int main() {
FILE *f;
char line[30];
char name[30];

printf("\nGive the name: \n");
scanf("%s", name);
f = fopen(name, "w");
printf("\nGive the line to enter file: ");

//gets(line);
//fgets(line, 50, stdin);
//scanf ("%[^\n]", line);
//scanf ("%[^\n]%*c", line);

printf("%s", line);
fclose(f);
}

这就是我尝试过的一切。

最佳答案

尝试在 scanf("%s", name); 之后放置一个 getchar(); 然后用 gets() 获取你想要的行

关于c - 我无法输入带空格的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58772474/

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