Chinaunix首页 | 论坛 | 博客
  • 博客访问: 408049
  • 博文数量: 78
  • 博客积分: 3642
  • 博客等级: 中校
  • 技术积分: 695
  • 用 户 组: 普通用户
  • 注册时间: 2006-10-23 15:33
文章分类

全部博文(78)

文章存档

2007年(53)

2006年(25)

分类: C/C++

2007-02-15 16:46:25

   一个程序运行后改为nobody,向/tmp目录的下的为777的写数据,write总是返回0,文件不能被写入。然后在chinaunix的论坛上发贴,以下是探讨的大致过程。
   1、用strerror(errno)输出的语句是"Socket operation on non-socket"。
   2、不是打开失败,打开文件我作了出错检查的。
   3、用的open/write,用fopen/fwrite却可以写入。
  4、使用open时,O_WRONLY、O_RDONLY、O_RDWR是必须选一个的。
  5、单独写一个程序测试是可以写入的。
 
结果:
   这是一个CPP程序,在这个函数所在的类中有一个参数完全一样(返回值为bool,把返回值赋给int型是没有警告的)的write,不过它是针对socket(所以报错"Socket operation on non-socket")的,而我不知道,于是就出错了,改为::write成功。

 
阅读(3001) | 评论(0) | 转发(0) |
0

上一篇:wtl消息处理宏

下一篇:一个日志函数

给主人留下些什么吧!~~