当前位置: 首页 > news >正文

进程函数练习

创建子父进程,子进程将1.txt内容拷贝到2.txt中,父进程将3.txt内容拷贝到4.txt中。

#include <myhead.h>int main(int argc, const char *argv[])
{pid_t ID;ID = fork();if(ID>0)//父进程{printf("父进程ID:%d\n",ID);int fd = open("3.txt",O_RDONLY);//只读打开int fd1 = open("4.txt",O_WRONLY|O_CREAT|O_TRUNC,0664);//只写打开if(fd == -1 && fd1 == -1){perror("");return -1;}while(1){char ch[5] = {0};int len = read(fd,ch,sizeof(ch));//读取字符串write(fd1,ch,len);//写入字符串if(len != sizeof(ch)){break;}}close(fd);close(fd1);fd1 = open("4.txt",O_RDONLY);char str[32] = {0};read(fd1,str,sizeof(str));//看写入的内容printf("%s",str);puts("**************");}//子父进程独立进行else if(ID == 0)//子进程{printf("子进程ID:%d\n",ID);int fd = open("1.txt",O_RDONLY);int fd1 = open("2.txt",O_WRONLY|O_CREAT|O_TRUNC,0664);if(fd == -1 && fd1 == -1){perror("");return -1;}while(1){char ch[5] = {0};int len = read(fd,ch,sizeof(ch));write(fd1,ch,len);if(len != sizeof(ch)){break;}}close(fd);close(fd1);fd1 = open("2.txt",O_RDONLY);char str[32] = {0};read(fd1,str,sizeof(str));printf("%s",str);}else{perror("fork");return -1;}return 0;
}

运行结果

整理整理

 


http://www.mrgr.cn/news/6519.html

相关文章:

  • Apache Doris安装部署
  • vue-cli搭建过程,elementUI搭建使用过程
  • Ubuntu下部署Hadoop集群+Hive(一)
  • 总结:Python语法
  • 喜报 | 麒麟信安“信创云桌面解决方案”在浙江省委党校应用实施,荣膺国家级示范案例
  • 浅谈对Maven的理解
  • 【工作记录】springboot中基于redis实现地理位置相关需求@20240822
  • 【功能自动化】WebTours:使用unittest编写注册测试用例
  • NACOS 2.4.1如何开启账号密码登录功能
  • 如何在没有密码的情况下解锁iPhone?
  • 探索OpenCV:计算机视觉的入门指南
  • ThreeJS中如何播放mp3音频?
  • 单例模式(singleton)- python实现
  • MySQL事务
  • 掌握Core Motion:Swift中运动传感器的魔法
  • 判别分析2|Bayes判别分析|Fisher判别分析|软件求解
  • Apollo9.0 PNC源码学习之Planning模块—— Lattice规划(六):横纵向运动轨迹评估
  • 小编需复盘,写练习
  • Vue3 后台管理系统项目 前端部分
  • 电脑换硬盘怎么全盘克隆?轻松实现数据迁移