Domanda

Lo so in C ++, puoi sbirciare al prossimo personaggio usando: in.peek();.

Come farei questo quando provo a "sbirciare" al prossimo personaggio di un file in C?

È stato utile?

Soluzione

FGETC+Ungetc. Forse qualcosa del genere:

int fpeek(FILE *stream)
{
    int c;

    c = fgetc(stream);
    ungetc(c, stream);

    return c;
}

Altri suggerimenti

Potresti usare un getc seguito da un ungetc

Dovrai implementarlo da solo. uso Fread per leggere il personaggio successivo e fseek per tornare dove eri prima della lettura

MODIFICARE:

 int fsneaky(FILE *stream, int8_t *pBuff, int sz) {
    sz = fread(pBuff, 1, sz, stream)
    fseek(pFile, -sz, SEEK_CUR);
    return(sz);
 }
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top