我正在编写程序并且必须处理缓冲区。但是当我使用一些循环时,我意识到缓冲区在每次迭代后都没有被刷新并且保留了它的最后一个输入值。我在互联网上搜索并找到了这个代码行。它有效,但我不知道这意味着什么。
fseek(stdin,0,SEEK_END);
答案 0 :(得分:1)
它将读/写指针移动到文件/流的末尾,因此需要刷新它。
int fseek(FILE *stream, long int offset, int whence)
<强>参数强>
stream - 这是指向标识流的FILE对象的指针。
偏移 - 这是从哪里偏移的字节数。
whence - 这是添加偏移量的位置。它由以下常量之一指定 -
答案 1 :(得分:0)
您也可以使用
功能int fflush(FILE *stream)
在stdin上。那应该做同样的操作。