اسم الوظيفة : lseek
ملف الرأس : <io.h>
النموذج الأولي للوظيفة : int lseek(مقبض int، إزاحة طويلة، طول طويل)؛
الوظيفة : تستخدم لتحريك مؤشر الملف المفتوح
المعلمات : مقبض int هو مقبض الملف الذي سيتم نقل مؤشر الملف إليه.
الإزاحة الطويلة هي الإزاحة التي سيتم نقلها
int fromwhere هو الاتجاه الذي يتم من خلاله حساب إزاحة مؤشر الملف.
هناك ثلاث قيم:
SEEK_SET بداية الملف
SEEK_CUR الموقع الحالي للملف
SEEK_END نهاية الملف
قيمة الإرجاع : موضع مؤشر الملف بعد تحريك مؤشر الملف
مثال للبرنامج : قم بإنشاء ملف بالمحتوى الذي يعجبني www.dotcpp.com كثيرًا!
// افتح الملف، وتخطى 7 بايت، واكتب 14 حرفًا. #include<stdio.h>#include<io.h>#include<fcntl.h>intmain(void){intfd=open(D:\a.txt,O_RDONLY);if(fd==-1){ printf(cannotopenthefilen);return1;}intpos=tell(fd);printf(beforelseekfunction,currentposition:%ldn,pos);lseek(fd,7,SEEK_SET);// انتقل إلى إزاحة بداية الملف موضع 7 بايت charbuf[20]={n};read(fd,buf,14);printf(theresis%sn,buf);pos=tell(fd);printf(afterlseekfunction,currentposition:% ld n,pos);إغلاق(fd);return0;}
نتائج التشغيل
قبل الدالة lseek، الموضع الحالي: 0theresiswww.dotcpp.comafterlseekfunction، الموضع الحالي: 21