English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

دليل أساسي لغة C

تحكم في عملية لغة C

الوظائف في لغة C

المتجهات في لغة C

الإشارات في لغة C

ال

مبنى لغة C

ملف لغة C

النوع الآخر

دليل مرجعي للغة C

استخدام دالة مكتبة C freopen() ومثال

مكتبة C - <stdio.h>

دالة مكتبة C FILE *freopen(const char *filename, const char *mode, FILE *stream) اسم ملف جديد filename مع التدفق المفتوح المحدد stream التحكم، وإغلاق الملفات القديمة في التدفق.

الإعلان

هذا هو إعلان دالة freopen()

FILE *freopen(const char *filename, const char *mode, FILE *stream)

المتغيرات

  • filename -- هذا هو النص الديناميكي C الذي يحتوي على اسم الملف الذي سيتم فتحه.
  • mode -- هذا هو النص الديناميكي C الذي يحتوي على نمط الوصول إلى الملف، والنمط كالتالي:
نمطالوصف
"r" فتح ملف لقراءة. يجب أن يكون الملف موجودًا.
"w" إنشاء ملف فارغ للاستخدام في الكتابة. إذا كان الاسم مشابهًا لملف موجود، يتم حذف محتويات الملف الموجود، ويتم اعتبار الملف كملف جديد فارغ.
"a" تضيف إلى ملف. تشغيل الكتابة يضيف بيانات إلى نهاية الملف. إذا لم يكن الملف موجودًا، يتم إنشاؤه.
"r+" فتح ملف لتحديث، يمكن قراءته وكتابته. يجب أن يكون الملف موجودًا.
"w+" إنشاء ملف فارغ لقراءة وكتابة.
"a+" فتح ملف لقراءة وتضيف.
  • stream -- هذا هو إشارة تشير إلى عمود FILE، الذي يحدد التدفق الذي سيتم إعادة فتحه.

القيمة المعدة

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

مثال على الإنترنت

النموذج التالي يوضح استخدام دالة freopen()

#include <stdio.h>
int main ()
{
   FILE *fp;
   printf("النص يتم توجيهه إلى stdout\n");
   fp = freopen("file.txt", "w+", stdout);
   printf("النص يتم توجيهه إلى file.txt\n");
   fclose(fp);
   return(0);
{}

دعونا نعتمد ونشغل البرنامج المذكور أعلاه، سيتم إرسال الآتي إلى مخرج المعيارية STDOUT، لأننا لم نفتح مخرج المعيارية في البداية:

النص يتم توجيهه إلى stdout

في دعوة freopen() بعد ذلك، سيتم ربط مخرج المعيارية STDOUT بالملف file.txt، وبغض النظر عما كتبناه في مخرج المعيارية STDOUT، سيتم كتابته في file.txt، لذا سيكون محتويات ملف file.txt كالتالي.

النص يتم توجيهه إلى file.txt

الآن دعونا نستخدم البرنامج التالي لعرض محتويات الملف المذكور أعلاه:

#include <stdio.h>
int main ()
{
   FILE *fp;
   int c;
   fp = fopen("file.txt","r");
   while(1)
   {
      c = fgetc(fp);
      if( feof(fp) )
      {
          break ;
      {}
      printf("%c", c);
   {}
   fclose(fp);
   return(0);
{}

مكتبة C - <stdio.h>