gpt4 book ai didi

c - read() 返回 "incorrect"值

转载 作者:太空狗 更新时间:2023-10-29 11:24:44 26 4
gpt4 key购买 nike

while(  rd = read(fd1, buf, 512) != 0)
{
len += rd;
if(readed < 0)
perror("read: ");
}

MAN 页面说,read() 返回读取字节数,但在我的例子中,此代码返回 block 数(取决于第三个参数)或迭代数。例如,我有一个包含 36 个符号的文件,此代码返回 1,当所有符号正常读取时,如果我将 512 更改为 4,它将返回 9,依此类推。请更正我和此代码以返回以 512 大小块读取的字节数

最佳答案

rd = read(fd1, buf, 512) != 0

表示

rd = (read(fd1, buf, 512) != 0)

!= 的结果始终是 01

你可能是说

while ((rd = read(fd1, buf, 512)) != 0)

关于c - read() 返回 "incorrect"值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22227243/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com