Create a file descriptor
I want to create a file descriptor in C whose value i will specify in code. I have a integer variable which specifies the value of file descriptor to be created. For e开发者_如何学Cxample i may need a file descriptor whose value is 5 and later associate that with the file named "sample.dat" .
fd = open ("sample.dat", O_RDONLY);
open the file
dup2 (fd, 5);
and copy the file descriptor fd
into the descriptor number 5
now you can do read (5, buffer, BUFF_MAX);
or also use fd
to access the same file. You need to close the fd
explicitly if you do not need it.
As @Arkadiy told see man dup2
for details.
You need dup2()
http://linux.die.net/man/2/dup
精彩评论