开发者

C equivalent to fstream's peek

开发者 https://www.devze.com 2022-12-17 11:06 出处:网络
I know in C++, you\'re able to peek at the next charac开发者_运维百科ter by using: in.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);
 }
0

精彩评论

暂无评论...
验证码 换一张
取 消