Tag: 回车

为什么fgets卡在回车上\ r?

我是新来的论坛和c一般,所以请耐心等待我。 我正在尝试编写一个带有文本文件并解析所有单词和字符的ac程序,然后将它们保存到输出文本文件中。 我正在使用C99,Windows 7-64bit,MinGW,记事本,记事本++和用于txt文件的ASNI格式。 我已经读过fgets()比fscanf用于读取输入更好,因为它有缓冲区溢出保护,所以我决定尝试使用它,但它在测试文件中有一些标点符号的问题(我认为这是回车\ r)。 我尝试使用fscanf,除了它跳过所有空格(我可以在以后添加,不关心它),它似乎接受所有文本就好并将其打印在输出文件中。 这是我的测试代码: #include #include #include #include #include void main(int argc, char* argv[]) { int limit=100, flimit=0, flimitmax=1900000000; //I stopped flimitmax short of the 2GB mark char name[limit], copyname[limit]; FILE *data, *output; //Gets the value of a specified data file for reading printf(“\nPlease specify a file to format for data […]

克里昂 – 回程? \ r

我正在使用CLion IDE,我正在尝试回车。 我在C中做一个print语句,并具有以下语法: printf(“\rHello World!”); 这是在一个循环内。 循环仍然在自己的行上打印每个Hello World 。 我的程序中没有\n 。 我已经尝试将line separators选项更改为unix mac OS和windows ,但没有一个更改function。 谷歌也让我没有有用的答案。 int main() { int i = 0; while (i < 5000000) { printf("\rThis is line number %d!", i++); } return 0; } 我的预期输出只是控制台窗口中的一行文本。 谢谢。

在C中,fread drop carriage返回?

我希望能够读取Windows文本文件,在内存中修改它,然后用修改后的数据覆盖旧文件。 但是,fread似乎并不存储我的Windows文本文件中存在的回车符,这会在我写旧数据时丢失。 我找不到任何似乎有这个问题的人。 以下是一些演示此问题的示例代码: #include #include int main() { FILE* textFile; long fileSize; char fileCharacterBuffer[100]; int i; for(i = 0; i < 100; i++) { fileCharacterBuffer[i] = '\0'; } textFile = fopen("./Test.txt", "r+"); fseek(textFile, 0L, SEEK_END); fileSize = ftell(textFile); fseek(textFile, 0L, SEEK_SET); fread(fileCharacterBuffer, 1, fileSize, textFile); } 测试文件: 3 112 REd 110 green #5/09/2014 5087 […]

scanf读取“Enter”键

当我在下面的代码中输入“Enter”时,为什么scanf不起作用? #include #include #include int main(int argc, char**argv) { char *msg = malloc(100*sizeof(char)); do{ scanf(“%s”,msg); printf(“%s\n”,msg); } while(strcmp(msg,””)!=0); }

由fgets回车

我正在运行以下代码: #include #include #include int main(){ FILE *fp; if((fp=fopen(“test.txt”,”r”))==NULL){ printf(“File can’t be read\n”); exit(1); } char str[50]; fgets(str,50,fp); printf(“%s”,str); return 0; } text.txt包含: I am a boy\r\n 由于我在Windows上,它需要\ r \ n作为一个新的行字符,所以如果我从一个文件中读取它,它应该在str存储”I am a boy\n\0″ ,但我得到”I am a boy\r\n” 。 我正在使用mingw编译器。