Hàm C để tìm kiếm trong một tệp được gọi là lseek (). Tại sao nó không được gọi là chỉ tìm kiếm ()?
off_t
và nếu bạn muốn bù 64 bit bạn sử dụnglseek64
creat()
. (Trên thực tế, chữ L có lẽ là viết tắt của logic.)
Hàm C để tìm kiếm trong một tệp được gọi là lseek (). Tại sao nó không được gọi là chỉ tìm kiếm ()?
off_t
và nếu bạn muốn bù 64 bit bạn sử dụnglseek64
creat()
. (Trên thực tế, chữ L có lẽ là viết tắt của logic.)
Câu trả lời:
Dường như 'l' trong lseek có nghĩa là 'dài', để phân biệt với chức năng tìm kiếm cũ trong phiên bản 2 của AT & T Unix. Đây là lỗi thời trước khi loại off_t được giới thiệu.
Tài liệu tham khảo hỗ trợ:
http://infohost.nmt.edu/~eweiss/222_book/222_book/0201433079/ch03lev1sec6.html cho biết:
Ký tự l trong tên lseek có nghĩa là "số nguyên dài." Trước khi giới thiệu kiểu dữ liệu off_t, đối số offset và giá trị trả về là các số nguyên dài. lseek được giới thiệu với Phiên bản 7 khi các số nguyên dài được thêm vào C. (Chức năng tương tự được cung cấp trong Phiên bản 6 bởi các chức năng tìm kiếm và cho biết.)
Như đã lưu ý dưới chân của http://www.daemon-systems.org/man/lseek.2.html
A seek() function appeared in Version 2 AT&T UNIX, later renamed into lseek() for ``long seek'' due to a larger offset argument type.