每次我在文本文件中输入字符串时,我都希望在输入的字符串之间有一个空格,如下所示:
输入:
Stack
Overflow
预期输出:
Stack Overflow
当前输出:
StackOverflow
这是我的函数代码:
void addDataToTextFile(FILE *fileptr)
{
char text[100];
fileptr = fopen("textfile.txt", "a");
printf("\n\nPlease enter some text: ");
fflush(stdin);
gets(text);
fprintf(fileptr, text);
fclose(fileptr);
printf("\n\nText has been added");
getch();
return;
}
最佳答案
gets
已弃用,请使用 fgets
并用空格替换尾随换行符:
void addDataToTextFile(FILE *fileptr)
{
char text[100];
char *ptr;
fileptr = fopen("textfile.txt", "a");
printf("\n\nPlease enter some text: ");
fflush(stdin); /* You want fflush(stdout); */
fgets(text, sizeof text, stdin);
if ((ptr = strchr(text, '\n'))
*ptr = ' ';
fprintf(fileptr, text); /* Wrong, use fprintf(fileptr, "%s", text); */
fclose(fileptr);
printf("\n\nText has been added");
getch();
return;
}
关于c - 如何在输入到文本文件的每个字符串之间添加空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29138685/