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

fclose

من cppreference.com
< c‏ | io
معرفة في ملف <stdio.h>
int fclose( FILE *stream );

تغلق تيار بيانات خاص بملف. أي بيانات في الـ Buffer لم تتم كتابتها يتم تفريغها وإمرارها لنظام التشغيل. أي بيانات لم تتم قرائتها تفقد.

بغض النظر عن نجاح close‎ من عدمه, يتم إزالة الرابط بين الكائن المشار إليه بـ stream‎ والملف. كذلك أي Buffers مسجلة بـ setbuf‎ أو setvbuf‎ يتم فك ارتباطها (واخلائها في حالة الحجز الأوتماتيكي).

محتويات

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

stream - تيار الملف المراد إغلاقه

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

0 في حالة النجاح, EOF‎ فيما عدا ذلك.

[تعديل] مثال

إغلاق ملف بعد الكتابة مع التأكد من عدم حدوث أخطاء.

#include <stdio.h>
#include <stdlib.h>
 
int main(void)
{
    FILE *fp = fopen("data.txt","w");
    if (fp == NULL)
    {
       perror("fopen()");
       fprintf(stderr,"fopen() failed in file %s at line # %d\n", __FILE__,__LINE__-4);
       exit(EXIT_FAILURE);
    }
 
    /* Normal processing continues here. */
    int ret_code = fclose(fp);
    if (ret_code == EOF)
    {
      perror("fclose()");
      fprintf(stderr,"fclose() failed in file %s at line # %d\n", __FILE__,__LINE__-4);
      exit(EXIT_FAILURE);
    }
 
    return EXIT_SUCCESS;
}

الخرج:

(لا شىء)

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

تفتح ملف
(دالة) [edit]
تفتح ملف داخل تيار بيانات موجود مسبقا
(دالة) [edit]