سؤال

أعلم في C ++ ، يمكنك إلقاء نظرة خاطفة على الحرف التالي باستخدام: in.peek();.

كيف يمكنني القيام بذلك عند محاولة "نظرة خاطفة" في الحرف التالي لملف في ج؟

هل كانت مفيدة؟

المحلول

FGETC+ungetc. ربما شيء من هذا القبيل:

int fpeek(FILE *stream)
{
    int c;

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

    return c;
}

نصائح أخرى

يمكنك استخدام أ getc تليها ungetc

ستحتاج إلى تنفيذها بنفسك. استعمال فريد لقراءة الشخصية التالية و فسيك للعودة إلى حيث كنت قبل القراءة

تعديل:

 int fsneaky(FILE *stream, int8_t *pBuff, int sz) {
    sz = fread(pBuff, 1, sz, stream)
    fseek(pFile, -sz, SEEK_CUR);
    return(sz);
 }
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top