Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/159.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ fgets()的分隔符是什么?_C++_Fgets - Fatal编程技术网

C++ fgets()的分隔符是什么?

C++ fgets()的分隔符是什么?,c++,fgets,C++,Fgets,当我对以下文件执行fgets()函数时: code.txt this is a test foobar all your base 它还复制“\n”。这是设计的: fgets()函数应将数据流中的字节读取到s指向的数组中,直到读取n-1个字节,或读取a并传输到s,或遇到文件结束条件。(重点是我的) 如果您不希望获得\n,请使用fscanf(“%100s”,str)(将实际大小而不是100) 在C++中,使用 STD::String 和 >以更灵活的方式读取文件的行。在发布这个代码之前,您是否阅

当我对以下文件执行fgets()函数时:

code.txt

this is a test
foobar
all your base
它还复制“\n”。

这是设计的:

fgets()函数应将数据流中的字节读取到s指向的数组中,直到读取n-1个字节,或读取a并传输到s,或遇到文件结束条件。(重点是我的)

如果您不希望获得
\n
,请使用
fscanf(“%100s”,str)
(将实际大小而不是100)


在C++中,使用<代码> STD::String 和 >以更灵活的方式读取文件的行。

在发布这个代码之前,您是否阅读了 FGES函数的文档?如果您使用的是*nix类型的系统类型
man fgets
。如果不是,谷歌
manfgets
取而代之。嘿,但为什么要投反对票呢。我认为这不是一个错误的问题。@pranitkothari提问者显然没有做出任何努力(除了发帖所需的努力)的问题往往会被否决。在这种情况下,
fgets
的文档非常容易理解,任何符合“函数X如何工作”模式的问题都应该在阅读函数X的文档之前进行。@pranitkothari“我认为这不是一个错误的问题。”但也不是一个很好的问题。假设要读取的最大字符数是1000。现在,如果我们在code.txt上执行fgets,那么它将只读取第一行,而不是小于1000字节的整个文件。@harmeetishinghvirdi
fgets
读取该行,而不是整个文件。如果要读取整个文件,请使用@harmeethinghvirdi。如果不希望在缓冲区中看到“
”\n“
s,请将它们全部替换为希望在缓冲区中看到的字符。