Hàm fseek() trong C
Hàm int fseek(FILE *stream, long int offset, int whence) trong Thư viện C chuẩn thiết lập vị trí file của Stream tới offset đã cho. Tham số offset xác định số byte để tìm kiếm từ vị trí where đã cho.
Khai báo hàm fseek() trong C
Dưới đây là phần khai báo cho hàm fseek() trong C:
int fseek(FILE *stream, long int offset, int whence)
Tham số
stream − Đây là con trỏ tới một đối tượng FILE mà nhận diện Stream.
offset − Đây là số byte để offset từ đó.
whence − Đây là vị trí từ đó offset được thêm vào. Nó được xác định bởi một trong số các hằng sau:
| Hằng | Miêu tả |
|---|---|
| SEEK_SET | Phần đầu file |
| SEEK_CUR | Vị trí hiện tại của con trỏ file |
| SEEK_END | Phần cuối file |
Trả về giá trị
Hàm này trả về 0 nếu thành công. Nếu không, hàm trả về giá trị khác 0.
Ví dụ
Chương trình C sau minh họa cách sử dụng của hàm fseek() trong C:
#include <stdio.h> int main () { FILE *fp; fp = fopen("baitapc.txt","w+"); fputs("Hoc C co ban va nang cao tai QTM !!!", fp); fseek( fp, 4, SEEK_SET ); fputs(" lap trinh C", fp); fclose(fp); return(0); }
Biên dịch và chạy chương trình trên sẽ tạo baitapc.txt với nội dung sau. Lúc đầu, chương trình tạo file và ghi Hoc C co ban va nang cao tai QTM !!! nhưng sau đó chúng ta đã phục hồi con trỏ ghi tại vị trí thứ 4 bắt đầu từ phần đầu file và sử dụng lệnh puts().
Bây giờ theo dõi nội dung sau của file trên bởi sử dụng chương trình C sau:
#include <stdio.h> int main () { FILE *fp; int c; fp = fopen("baitapc.txt","r"); while(1) { c = fgetc(fp); if( feof(fp) ) { break; } printf("%c", c); } fclose(fp); return(0); }
Biên dịch và chạy chương trình C trên để xem kết quả:
Theo Tutorialspoint
Bài trước: Hàm freopen() trong C
Bài tiếp: Hàm fsetpos() trong C
Bạn nên đọc
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:
-
Ngôn ngữ lập trình C là gì?
-
Hướng dẫn cài đặt C
-
Cấu trúc chương trình C cơ bản
-
Cú pháp cơ bản
-
Kiểu dữ liệu
-
Biến trong C
-
Hằng số
-
Lớp lưu trữ
-
Các toán tử
-
Điều khiển luồng
-
Vòng lặp
-
Các hàm trong C
-
abort()
-
abs()
-
atexit()
-
atof()
-
atoi()
-
atol()
-
bsearch()
-
calloc()
-
clearerr()
-
ldiv()
-
exit()
-
fclose()
-
feof()
-
ferror()
-
fflush()
-
fgetc()
-
fgetpos()
-
fgets()
-
fopen()
-
fprintf()
-
fputc()
-
fputs()
-
fread()
-
free()
-
freopen()
-
fscanf()
-
fseek()
-
fsetpos()
-
ftell()
-
fwrite()
-
getc()
-
getchar()
-
getenv()
-
gets()
-
labs()
-
labs()
-
malloc()
-
mblen()
-
mbstowcs()
-
mbtowc()
-
memchr()
-
memcmp()
-
memcpy()
-
memset()
-
perror()
-
printf()
-
putc()
-
putchar()
-
puts()
-
qsort()
-
raise()
-
rand()
-
realloc()
-
remove()
-
rename()
-
rewind()
-
scanf()
-
setbuf()
-
setvbuf()
-
signal()
-
sprintf()
-
srand()
-
sscanf()
-
strchr()
-
strcmp()
-
strcoll()
-
strcpy()
-
strcspn()
-
strerror()
-
strlen()
-
strncat()
-
strncmp()
-
strncat()
-
strncpy()
-
strpbrk()
-
strrchr()
-
strspn()
-
strstr()
-
strtod()
-
strtok()
-
strtol()
-
strtod()
-
strtoul()
-
strxfrm()
-
system()
-
tmpfile()
-
tmpnam()
-
ungetc()
-
vfprintf()
-
vsprintf()
-
wcstombs()
-
wctomb()
-
-
Quy tắc phạm vi
-
Mảng
-
Con trỏ
-
Chuỗi
-
Cấu trúc (Structure)
-
Union trong C
-
Bit Field
-
Typedef
-
Input & Output
-
Đọc và ghi file
-
Bộ tiền xử lý
-
Header File
-
Ép kiểu
-
Xử lý lỗi
-
Đệ quy
-
Tham số biến
-
Quản lý bộ nhớ
-
Tham số dòng lệnh
-
Thư viện C
-
Switch
-
Enumeration (enum)
Hướng dẫn AI
Học IT
AI
Hàm Excel