C equivalent to fstream's peek
I know in C++, you're able to peek at the next charac开发者_运维百科ter by using: in.peek();
.
How would I go about this when trying to "peek" at the next character of a file in C?
fgetc+ungetc. Maybe something like this:
int fpeek(FILE *stream)
{
int c;
c = fgetc(stream);
ungetc(c, stream);
return c;
}
You could use a getc
followed by an ungetc
you'll need to implement it yourself. use fread to read the next character and fseek to go back to where you were before the read
EDIT:
int fsneaky(FILE *stream, int8_t *pBuff, int sz) {
sz = fread(pBuff, 1, sz, stream)
fseek(pFile, -sz, SEEK_CUR);
return(sz);
}
精彩评论