以下行是什么意思?

时间:2017-01-15 20:38:14

标签: c input io buffer flush

我正在编写程序并且必须处理缓冲区。但是当我使用一些循环时,我意识到缓冲区在每次迭代后都没有被刷新并且保留了它的最后一个输入值。我在互联网上搜索并找到了这个代码行。它有效,但我不知道这意味着什么。 fseek(stdin,0,SEEK_END);

2 个答案:

答案 0 :(得分:1)

它将读/写指针移动到文件/流的末尾,因此需要刷新它。

请参阅Tutorialspoint

int fseek(FILE *stream, long int offset, int whence)

<强>参数

stream - 这是指向标识流的FILE对象的指针。

偏移 - 这是从哪里偏移的字节数。

whence - 这是添加偏移量的位置。它由以下常量之一指定 -

  • SEEK_SET:文件开头
  • SEEK_CUR:文件的当前位置 指针
  • SEEK_END:文件结尾

答案 1 :(得分:0)

您也可以使用

功能
int fflush(FILE *stream)

在stdin上。那应该做同样的操作。