0
我在問,因爲我試圖在C中創建一個我需要文件的文件描述符(不能使用文件指針)的函數。我還沒有在這裏或谷歌上找到任何有用的東西。我如何找出文件的文件描述符
我在問,因爲我試圖在C中創建一個我需要文件的文件描述符(不能使用文件指針)的函數。我還沒有在這裏或谷歌上找到任何有用的東西。我如何找出文件的文件描述符
確保您瞭解文件描述符是什麼。直到爲該文件創建一個文件描述符,即I.e.與open()
。然後保存從打開返回的值,這是您的描述符。
int fd=open("file.txt",O_RDONLY);
if(fd == -1){
// error
}
有關詳細信息和更多用法,請參閱http://pubs.opengroup.org/onlinepubs/009695399/functions/open.html。
語法看起來到底如何? – Tamanici
http://www.gnu.org/software/libc/manual/html_node/Descriptors-and-Streams.html – user2357112
有沒有這樣的事情**文件的**文件描述符。每個open調用都會得到一個文件描述符作爲返回值(還有其他的API可以返回文件描述符,例如'dup')。因此,如果您需要以另一種方式獲取文件描述符,請調用'open'來獲取文件描述符或澄清您的問題。 – kaylum
當你說「一個文件」,你的意思是一個你有名字的磁盤文件,或者你的意思是調用'fopen()'產生的'FILE *'?如果是後者,答案是['fileno()'](http://pubs.opengroup.org/onlinepubs/9699919799/functions/fileno.html)。 –