المتغيرات
فضاءات التسمية
أفعال

fgetc, getc

من cppreference.com
< c‏ | io

معرفة في ملف <stdio.h>
int fgetc( FILE *stream );
int getc( FILE *stream );

تقرأ الحرف التالي من تيار إدخال. getc()‎ ربما تكون مطبقة كماكرو.

محتويات

[تعديل] المعطيات

stream - تيار لقراءة حرف منه

[تعديل] القيمة المُرجعة

يتم إرجاع الحرف في حالة النجاح . EOF‎ في حالة الفشل.

لو كان سبب الفشل, الوصول إلى نهاية الملف يتم تسجيل العلامة eof (أنظر feof()‎). لو كان هناك سبب آخر يتم تسجيل العلامة error (أنظر ferror()‎).

[تعديل] مثال

#include <stdio.h>
#include <stdlib.h>
 
int main(void)
{
    FILE* tmpf = tmpfile();
    fputs("abcde\n", tmpf);
 
    rewind(tmpf);
 
    int ch;
    while ((ch=fgetc(tmpf)) != EOF)   /* قراءة وطباعة كل حرف بما فيه علامة السطر الجديد */
          printf("%c", ch);
 
    /* التأكد من سبب فشل آخر استدعاء */
    if (feof(tmpf))          /* الفشل نتيجة انتهاء الملف */
       puts("End of file reached");
    else if (ferror(tmpf))   /* الفشل نتيجة سبب آخر */
         {
            perror("fgetc()");
            fprintf(stderr,"fgetc() failed in file %s at line # %d\n", __FILE__,__LINE__-9);
            exit(EXIT_FAILURE);
         }
 
    return EXIT_SUCCESS;
}

الخرج:

abcde
End of file reached

[تعديل] أنظر أيضا

(حتى C11)
تقرأ سلسلة من ‎stdin‎ بطريقة غير آمنة
(دالة) [edit]
تكتب حرف في تيار ملف
(دالة) [edit]
تقوم بإعادة حرف إلى ch إلى تيار الملف
(دالة) [edit]