La función C para buscar en un archivo se llama lseek (). ¿Por qué no se llama simplemente seek ()?
off_t
y si quieres el desplazamiento de 64 bits que usaslseek64
creat()
. (En realidad, la L probablemente significa lógico).
La función C para buscar en un archivo se llama lseek (). ¿Por qué no se llama simplemente seek ()?
off_t
y si quieres el desplazamiento de 64 bits que usaslseek64
creat()
. (En realidad, la L probablemente significa lógico).
Respuestas:
Parece que la 'l' en lseek significa 'largo', para diferenciarse de una función de búsqueda anterior en la versión 2 de AT&T Unix. Este es un anacronismo antes de que se introdujera el tipo off_t.
Referencias de apoyo:
http://infohost.nmt.edu/~eweiss/222_book/222_book/0201433079/ch03lev1sec6.html indica:
El carácter l en el nombre lseek significa "entero largo". Antes de la introducción del tipo de datos off_t, el argumento de compensación y el valor de retorno eran enteros largos. Se introdujo lseek con la Versión 7 cuando se agregaron enteros largos a C. (Las funciones de búsqueda y presentación proporcionaron una funcionalidad similar en la Versión 6).
Como se señala al pie de 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.