Latest web development tutorials

وظائف مكتبة C - fgetpos ()

C المكتبة القياسية - <stdio.h> C المكتبة القياسية - <stdio.h>

وصف

وظائف مكتبة Cكثافة العمليات fgetpos (FILE * تيار، fpos_t * نقاط البيع) يحصل تيارتدفق الموقف الملف الحالي، والكتابة إلىنقاط البيع.

بيان

هنا هو () وظيفة بيان fgetpos.

int fgetpos(FILE *stream, fpos_t *pos)

المعلمات

  • تيار - وهذا هو مؤشر إلى ملف مؤشر إلى كائن، وتدفق FILE معرف الكائن.
  • نقاط البيع - وهذا هو مؤشر إلى مؤشر إلى fpos_t الكائن.

عودة القيمة

في حال نجاحها، تقوم الدالة بإرجاع صفر. في حالة حدوث خطأ، تقوم بإرجاع قيمة غير صفرية.

أمثلة

يوضح المثال التالي fgetpos () يتم استخدام الدالة.

#include <stdio.h>

int main ()
{
   FILE *fp;
   fpos_t position;

   fp = fopen("file.txt","w+");
   fgetpos(fp, &position);
   fputs("Hello, World!", fp);
  
   fsetpos(fp, &position);
   fputs("这将覆盖之前的内容", fp);
   fclose(fp);
   
   return(0);
}

دعونا ترجمة وتشغيل البرنامج السابق، الأمر الذي سيخلقfile.txt الملف، فإنه يقرأ على النحو التالي.أولا، ونحن نستخدمfgetpos () وظيفة للحصول على الموقف المبدئي للملف، ومن ثم نكتب إلى ملفمرحبا، العالم،ثم نستخدم fsetpos ()لإعادة تعيين في بداية مؤشر الكتابة إلى ملف، يتم الكتابة فوق الملف بالنص التالي:!

这将覆盖之前的内容

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

#include <stdio.h>

int main ()
{
   FILE *fp;
   int c;
   int n = 0;

   fp = fopen("file.txt","r");
   while(1)
   {
      c = fgetc(fp);
      if( feof(fp) )
      {
          break ;
      }
      printf("%c", c);
   }

   fclose(fp);

   return(0);
}

C المكتبة القياسية - <stdio.h> C المكتبة القياسية - <stdio.h>