这个问题已经在这里有了答案:
9年前关闭。
假设我有一个包含字符的文件。我想看看下一个字符是什么,而不必移动指针,只是要“指向”它。我将如何去做呢?
FILE *fp;
char c, d;
fp = fopen (file, "r");
c = getc(fp);
d = nextchar?
我如何看待接下来出现的字符,而无需再次实际调用getc并移动指针?
最佳答案
您可以简单地使用getc()
来获取下一个字符,然后调用 ungetc()
。
更新:请参阅@Jonathan的注释以获取一个包装器,该包装器允许窥视文件的末尾(在该事件中返回EOF
)。
更新2:更紧凑的版本:
int fpeek(FILE * const fp)
{
const int c = getc(fp);
return c == EOF ? EOF : ungetc(c, fp);
}
关于c - 如何查看C流中的下一个字符? [复制],我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7623323/