linux之write函数

书上关于write函数的讲法往往如下:
#include

ssize_t write(int fd, const void *buf, size_t count);

参数:  
fd:要进行写操作的文件描述符
buf:需要输出的缓冲区
count:最大输出字节计数

而其相对于read函数却是不同的

#include

ssize_t read(int fd, const void *buf, size_t count);

参数:  
fd:要进行读操作的文件描述符
buf:需要读入的缓冲区
count:最大读入字节计数

这个区别在于,read函数中的count值可以你人为给定(往往这个会大的方向取,一般要比你实际可能读到的字符数要大,这样是可以的),而write函数中却不能这样指定,它必须是实际应该写入的字符数。要不然它会输出你所指定的字符数的字符, 那一定会出现不可预知的错误(越界)。

你可能感兴趣的:(LINUXC)