Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

fseek() ใน C/C++


fseek() ในภาษา C ใช้เพื่อย้ายตัวชี้ไฟล์ไปยังตำแหน่งเฉพาะ ออฟเซ็ตและสตรีมเป็นปลายทางของตัวชี้ ซึ่งกำหนดไว้ในพารามิเตอร์ฟังก์ชัน หากสำเร็จ จะคืนค่าศูนย์ หากไม่สำเร็จ จะส่งกลับค่าที่ไม่ใช่ศูนย์

นี่คือไวยากรณ์ของ fseek() ในภาษา C

int fseek(FILE *stream, long int offset, int whence)

นี่คือพารามิเตอร์ที่ใช้ใน fseek()

  • สตรีม - นี่คือตัวชี้เพื่อระบุสตรีม

  • ออฟเซ็ต − นี่คือจำนวนไบต์จากตำแหน่ง

  • ที่ไหน − นี่คือตำแหน่งที่เพิ่มออฟเซ็ต

โดยที่ถูกกำหนดโดยค่าคงที่ตัวใดตัวหนึ่งต่อไปนี้

  • SEEK_END - สิ้นสุดไฟล์

  • SEEK_SET - เริ่มต้นไฟล์

  • SEEK_CUR - ตำแหน่งปัจจุบันของตัวชี้ไฟล์

นี่คือตัวอย่าง fseek() ในภาษา C

สมมติว่าเรามีไฟล์ "demo.txt" ที่มีเนื้อหาดังต่อไปนี้ -

This is demo text!
This is demo text!
This is demo text!
This is demo text!

ตอนนี้ให้เราดูรหัส

ตัวอย่าง

#include<stdio.h>
void main() {
   FILE *f;
   f = fopen("demo.txt", "r");
   if(f == NULL) {
      printf("\n Can't open file or file doesn't exist.");
      exit(0);
   }
   fseek(f, 0, SEEK_END);
   printf("The size of file : %ld bytes", ftell(f));
   getch();
}

ผลลัพธ์

The size of file : 78 bytes