Thứ Sáu, 24 tháng 12, 2021

3: Nhập Và Xuất Dữ Liệu (Phần 1) - Khái Niệm Chung, Stream và các tập tin

 

3:  Nhập Và Xuất Dữ Liệu


- Khái Niệm Chung

1. Khái niệm:
Trước đây chúng ta đã xét việc nhập dữ liệu từ bàn phím. Trong nhiều trường hợp thực tế, để thuận lợi , chúng ta phải nhập dữ liệu từ các tập tin trên đĩa.
Các hàm thư viện của C cho phép truy cập tập tin và chia là 2 cấp khác nhau:
- Các hầm cấp 1 là các hàm ở cấp thấp nhất, truy cập trực tiếp đến các tập tin trên đĩa. C không cung cấp vùng nhớ đệm cho các hầm này
- Các hàm cấp 2 là các hầm truy xuất tập tin cao hơn, do chúng được C cung cấp vùng nhớ đệm

Đối với các hàm cấp 1, tập tin được xem là khối các byte liên tục do đó khi muốn truy cập mẫu tin cụ thể thì phải tính toán địa chỉ của mẫu tin và như vậy công việc vất vả hơn. Ngoài ra phải cung cấp vùng nhớ đệm cho kiểu đọc ghi này.
Đối với các hàm cấp hai công việc nhẹ nhàng hơn do:
- Trình biên dịch tự động cung cấp vùng kí ức đệm cho chúng
- Có thể truy xuất các mẫu tin mà không gặp khó khăn như với các hầm cấp 1

Trong C, các thông tin cần thiết cho các hàm xuất nhập cấp 2 được đặt trong tập tin stdio.h còn các thông tin về hàm nhập xuất cấp 1 thì ở trong tập tin io.h

2. Stream và các tập tin:
Ta phải phân biệt hai thuật ngữ là stream và file .Hệ thống xuất nhập của C cung cấp một không gian tưởng tượng giữa người lập trình và các thiết bị được dùng. Cấp trung gian tưởng tượng này gọi là stream và thiết bị cụ thể là tập tin.

- Các streams: Trong máy tính ta dùng 2 loại stream : văn bản và nhị phân . Một stream văn bản là một loạt kí tự được tổ chức thành dòng mà mỗi dòng được kết thúc bằng kí tự xuống dòng newlinef®n”)..
Khi ghi, một kí tự chuyển dòng LFŒmã 10) được chuyển thành 2 kí tự CR( mã 13) và LF..
Khi đọc 2 kí tự liên tiếp CR và LF trên tập tin chỉ cho ta
một kí tự LE.
Một stream nhị phân là một loạt các byte.

- Các tập tin : Trong C ,một tập tin là một khái niệm logic mà hệ thống có thể áp dụng cho mọi thứ từ các tập tin trên đĩa cho đến các terminal . Khi bắt đầu thực hiện chương trình , máy tính mở 3 stream văn bản đã được định nghĩa trước là stdin, stdout và stderr. Đối với hầu hết các hệ thống, các thiết bị này là console.

0 bình luận:

Đăng nhận xét