问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

linux read 和write的程序帮我逐条解释一下,新人不懂。 一定要详细些。

发布网友 发布时间:2022-04-06 12:32

我来回答

3个回答

热心网友 时间:2022-04-06 14:02

#include <unistd.h>//引入头文件LINUX/UNIX下的,为函数read/write用
#include <fcntl.h>//为函数open用

int main()
{
int fdin, fdout;//定义文件描述符一个文件进的,一个出的
ssize_t nread;//定义字节大小
char buffer[1024];//定义缓冲区字节大小

fdin = open("temp1.txt", O_RDONLY);//打开当前目录下的文件temp1.txt并且以只读方式打开
fdout = open("temp2.txt", O_WRONLY | O_CREAT | O_TRUNC, 0644);
//打开当前目录下的文件temp2.txt,以写方式打开,并且是没有就创建,有的话就全部覆盖掉,0644是该文件的权限 就是rwx(读/写/执行),应该明白撒
while((nread = read(fdin, buffer, 1024)) > 0)//从文件描述符里读取数据到buffer里,当读取到的字节大于0时,言外之意就是要读取完文件temp1.txt
{
if(write(fdout, buffer, nread) < nread)//把从文件temp1.txt里读到的数据一直往文件temp2.txt里写,直到写完全部temp1.txt的数据
{
close(fdin);//关闭文件描述符
close(fdout);//关闭文件描述符
}
}

close(fdin);关闭文件描述符
close(fdout);关闭文件描述符

/*基于程序的完整性,最好加上返回语句 return 0;//表示程序正常结束*/
}

不知道够不够详细呢兄弟····

热心网友 时间:2022-04-06 15:20

#include <unistd.h>
#include <fcntl.h>

int main()
{
int fdin, fdout;
ssize_t nread;
char buffer[1024];

fdin = open("temp1.txt", O_RDONLY); //以只读方式打开文件temp1.txt,获得句柄fdin
fdout = open("temp2.txt", O_WRONLY | O_CREAT | O_TRUNC, 0644);//以只写方式打开文件temp2.txt,获得句柄fdout

while((nread = read(fdin, buffer, 1024)) > 0) //通过句柄fdin从temp1.txt中读取数据到buffer数组中,读到的数据量大小为nread个字节,如果nread>0则表示能读到,所以还要继续循环
{
if(write(fdout, buffer, nread) < nread) //把buffer数组中数据写进fdout句柄代表的temp2.txt中
{
close(fdin); //关闭fdin句柄
close(fdout);//关闭fdout句柄
}
}

close(fdin);
close(fdout);
}

热心网友 时间:2022-04-06 16:54

逐条????
什么叫逐条。。。。。
您能说明白点么。。。。
如果是笼统点的话。或许能帮你解答。
但是如果详细的话。。。。
我想解释完了。您也用不着了
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
北京注册成立一个公司需要多少钱 北京公司都是什么 手机导航地图语音怎么下载 如何分别真金和仿金首饰 怎样区分真金和仿金首饰呢 小学生新年晚会主持人的串词!!(不要太多)急 大大后天就需要了!!!_百度... 周年晚会策划公司 奥格瑞玛传送门大厅在哪 奥格瑞玛传送门大厅怎么走 锻炼颈椎的几个动作 水多久能结冰 冰能在多长时间内形成 梦见自己的老公死了,放在棺材里,自己不相信他死了,还揭开棺材盖看是什么预兆? 2015.3.26中青宝洗盘,跳空低开收大阴线,后面怎么走下去 如何判断庄家拉抬与洗盘次数及幅度 股票书跳空低开问题 吸筹过程中,有时主力借大盘下跌或某些利空进行洗盘。一般会是多大的幅度,有时疯狂大幅洗盘,会有多大幅 对于股票的洗盘如何分析?怎么判断洗盘的幅度 股市中,洗盘幅度一般是多大?超出这个幅度会怎么样? 主力洗盘一般洗多少点 请问股票跳空低开的幅度是多少 微信里的朋友被我拉到黑名单里了、请问怎么样才能让它变回原样妮? 如何让微信视频变成美颜视频 怎样可以让微信变半透明 怎么让微信变成黑色华为FLA-AL10? 如何让微信变成黑色的? excel里怎么把2.57分钟转换为格式00:00:00 即:小时:分钟:秒 微信被封了重新用这个手机号注册一个怎么才能让我的微信变回原来的样子?_百度问一问 EXCEL时间转换数值 如何将excel中的00:00:00形式的时间转换成但是是天的0.00的小数? EXCEL中时间长度都是中文显示“0时0分0秒”,为什么不能转换成0:0:0这样的显示 excel怎么把00:00:00转化成秒数 opp ofingx2怎么关闭HD? oppofindx卡2移动信号旁边显示了一个HD上面有一个电话图标怎么关闭 液压胶管都有哪些种类啊 液压胶管2一19一34H1102(M30X2)一1500代表什么意思,谢谢。 液压胶管的分类 液压胶管规格型号都有哪些 苹果平板电脑忘记了id和密码怎么办 胶管的类别有哪些? 胶管的分类有那些? 国外高压胶管品牌有哪几个? 液压油管有哪些牌子 请问现在国内生产高压液压胶管大的正规的企业有那些? 1月9日股市开市吗 年后股市什么时候开市? 明天有股市吗明天股市开盘吗 C++中read和write函数分别是什么意思 竹子什么颜色好一些? 成熟的竹子是什么颜色,傣族竹楼用的竹子为什么都是灰色的?有没有青绿色的? 手机(OPPO r7splus)屏幕上老是显示图示淘口令,如何取消?感谢 竹子生长时的颜色变化