Hàm fprintf
Dạng hàm: int fprintf(FILE *f, char*format, [para_values]) Trong đó:
f: là con trỏ tệp
format: chứa địa chỉ chuỗi điều khiển
para_values: là danh sách các đối mà giá trị của chúng cần ghi lên tệp
Công dụng: ghi vào tệp giá trị của các đối theo khuôn dạng được xác định trong chuỗi điều khiển. Nếu thành công hàm trả về giá trị bằng số byte ghi vào tệp. Nếu có lỗi hàm sẽ trả về giá trị là EOF.
Lưu ý
Chuỗi điều khiển và danh sách các đối có ý nghĩa như trong hàm printf
và cách thức hoạt động của hàm này cũng giống như hàm printf.
Có thể bạn quan tâm!
- Cơ sở lập trình - Trường ĐH Thương mại - 11
- Cơ sở lập trình - Trường ĐH Thương mại - 12
- Cơ sở lập trình - Trường ĐH Thương mại - 13
Xem toàn bộ 113 trang tài liệu này.
07/2020 Cơ sở lập trình209
Hàm fscanf
Dạng hàm: int fscanf(FILE *f, char*format, [para_values]) Trong đó:
f: là con trỏ tệp
format: chứa địa chỉ chuỗi điều khiển
para_values:là danh sách các đối chứa kết quả đọc được từ tệp
Công dụng: đọc dữ liệu từ tệp biến đổi theo khuôn dạng trong format và lưu kết quả vào các đối. Hàm trả về giá trị bằng số trường đọc được.
Lưu ý
Ý nghĩa của chuỗi điều khiển, danh sách các đối và cách thức hoạt động của hàm này cũng giống như hàm scanf.
07/2020 Cơ sở lập trình210
Ví dụ: viết chương trình thực hiện nhập một số nguyên n rồi thực hiện ghi n và dãy số nguyên từ 0 đến n-1 vào tệp, sau đó thực hiện đọc tệp và đưa vào một mảng
(chương trình)
07/2020 Cơ sở lập trình 211
Tương tự như trong tệp nhị phân
Lưu ý
Đối với các hàm putc và fputc trong tệp văn bản nếu mã của ký tự cần ghi m=10 (mã chuyển dòng) thì hàm sẽ ghi vào tệp hai mã là 13 và 10.
Đối với hàm getc và fgetc trong tệp văn bản khi đọc được hai mã 13 và 10 liền nhau thì hàm sẽ trả lại một giá trị là 10, và khi gặp mã 26 (mã kết thúc tệp) thì hàm sẽ trả lại giá trị là EOF chứ không trả lại giá trị 26.
07/2020 Cơ sở lập trình 212
Hàm fputs
Dạng hàm:
int fputs(const char *s, FILE *f) Trong đó:
▪ s: là con trỏ trỏ tới địa chỉ đầu của một chuỗi ký tự kết thúc bằng dấu ‘ ’
▪ f: là con trỏ tệp
Công dụng: ghi chuỗi ký tự s vào tệp f (dấu ‘ ’ không được ghi vào tệp). Nếu thành công hàm trả lại giá trị là ký tự cuối cùng được ghi vào tệp. nếu có lỗi hàm trả lại giá trị là EOF
07/2020 Cơ sở lập trình 213
Hàm fgets
Dạng hàm: char *fgets(char *s, int n, FILE *f) Trong đó:
▪ s: là con trỏ tới vùng nhớ chứa chuỗi ký tự đọc
được từ tệp
▪ n: là số nguyên xác định độ dài tối đa của chuỗi cần đọc
▪ f: là con trỏ tệp
07/2020 Cơ sở lập trình 214
Công dụng: đọc một xâu ký tự từ tệp f đưa vào vùng nhớ s.
▪ Kết thúc việc đọc khi hoặc đã đọc n-1 ký tự, hoặc gặp dấu xuống dòng (13 và 10, mã 10 được đưa vào xâu kết quả), hoặc kết thúc tệp
▪ Xâu kết quả sẽ được bổ sung thêm dấu hiệu kết thúc chuỗi ‘ ’. Nếu thành công hàm trả lại giá trị là địa chỉ vùng nhớ nhận kết quả. Ngược lại nếu có lỗi hoặc gặp cuối tệp hàm trả lại giá trị là NULL
07/2020 Cơ sở lập trình 215
Ví dụ: viết chương trình thực hiện nhập các dòng ký tự từ bàn phím và ghi vào tệp. Sau đó sẽ mở lại tệp để đọc tệp và in ra màn hình
(chương trình)
07/2020 Cơ sở lập trình 216