Câu lệnh sau có ý nghĩa gì: int open(tep1, O_TRUNC);
Trả lời:
Đáp án đúng: B
Trong C/C++, hàm open()
được sử dụng để mở một tệp tin. Tham số thứ hai của hàm này là một tập hợp các cờ (flags) để chỉ định cách tệp tin sẽ được mở.
O_TRUNC
là một trong các cờ này. KhiO_TRUNC
được sử dụng trong lệnh gọiopen()
, nó có nghĩa là nếu tệp tin đã tồn tại, nội dung của tệp tin sẽ bị xóa (truncate) về độ dài 0. Nói cách khác, nó xóa toàn bộ nội dung hiện có của tệp.
Vậy nên câu lệnh int open(tep1, O_TRUNC);
có ý nghĩa là mở (hoặc tạo mới nếu chưa tồn tại) tệp tin có tên là tep1
và xóa toàn bộ nội dung hiện có của nó nếu tệp tin đó đã tồn tại. Việc mở ở đây không giới hạn là tệp nhị phân hay tệp văn bản, O_TRUNC
chỉ tác động đến nội dung.