调用write()失败原因不明

时间:2013-03-26 19:37:48

标签: c file-io

我用open()打开一个文件,检查了我的文件描述符,似乎没问题(3)。 但是当我尝试写这个fd时,write()返回-1。 我也打印我的字符串,显示正确。

errno = 9, "Bad file descriptor"

2 个答案:

答案 0 :(得分:0)

I checked my file descriptor and seems to be ok (3)

您的文件描述符显然无法写入。来自write的文档:

  

EBADF   fd不是有效的文件描述符,也不是可以写入的。

答案 1 :(得分:0)

我会使用标准库stdio.h中给出的函数。使用fopen()打开文件,使用fprintf()写入文件,使用fclose()关闭文件。例如:

FILE *fh;

fh = fopen("test.txt","w");

fprintf(fh, "Hello World!\n");

fclose(fh);

我会将此网站加入书签,因为它是标准C编程的宝贵资源(提示:请先检查一下;) http://www.acm.uiuc.edu/webmonkeys/book/c_guide/