fgetc, getc
من cppreference.com
<tbody>
</tbody> <tbody class="t-dcl-rev ">
</tbody><tbody> </tbody>| معرفة في ملف <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 بطريقة غير آمنة (دالة) |
| تكتب حرف في تيار ملف (دالة) | |
| تقوم بإعادة حرف إلى ch إلى تيار الملف (دالة) | |
مقالة مرجع C++ عن fgetc, getc
| |