Bad file descriptor Bad file descriptor unix unix

Bad file descriptor


Try this:

open("output", O_CREAT|O_WRONLY, 0777)


I think O_CREAT alone is not enough. Try adding O_WRONLY as flag to the open command.


According to the open(2) man page:

The argument flags must include one of the following access modes: O_RDONLY, O_WRONLY, or O_RDWR.

So yes, as suggested by others, please change your open to open("output", O_CREAT|O_WRONLY, 0777));. Use O_RDWR if you need to read from the file. You may also want O_TRUNC -- see the man page for details.