C接口避坑

sendmsg进行fd发送时,若发送端的fd大于对端的fd限制,对端的msgctl字段为NULL;(根本原因在于两个进程设置的ulimit -n设置的fd限制数不一致)

write文件会使文件指针偏移,read读取时会直接从当前偏移的位置进行读取,一般写文件后,需lseek(fd,0,SEEK_SET)使文件指针指向文件头部;

open函数:需注意文件不存在时是否创建、读写权限(默认为只读)、读写操作的位置(默认是从文件头部开始进行覆盖写)、读写模式(覆盖写(默认)、追加写O_APPEND 、清空写O_TRUNC );

open使用原型:
int open( const char * pathname, int flags); int open( const char * pathname,int flags, mode_t mode);

猜你喜欢

转载自blog.csdn.net/qq_29044159/article/details/108270237