linux 管道write,关于 linux 管道中 read 和 write的返回值问题

一直不了解  在pipe中   read()和write()的返回值

然后 在 终端  用man 查找  可以 知道

@ubuntu:~/linux_c$ man read

SYNOPSIS

#include

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

DESCRIPTION

read() attempts to read up to count bytes from file descriptor fd into the buffer starting at buf.

If count is zero, read() returns zero and has no other results. If count is greater than SSIZE_MAX, the result is unspecified.

RETURN VALUE

On success, the number of bytes read is returned (zero indicates end of file), and the file position is advanced by this number. It

is not an error if this number is smaller than the number of bytes requested; this may happen for example because fewer bytes are

actually available right now (maybe because we were close to end-of-file, or because we are reading from a pipe, or from a terminal),

or because read() was interrupted by a signal. On error, -1 is returned, and errno is set appropriately. In this case it is left

unspecified whether the file position (if any) changes.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值