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

8.4IO进程线程——进程

文章目录

  • 一、思维导图
  • 二、创建一个父子进程,父拷贝文件前半部分,子拷贝文件后半部分
    • myhead.h
    • 代码
    • 现象
  • 三、牛客网刷题

一、思维导图

在这里插入图片描述

二、创建一个父子进程,父拷贝文件前半部分,子拷贝文件后半部分

myhead.h

#ifndef __MYHEAD_H__
#define __MYHEAD_H__#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>#define ERR_MSG(msg) do{perror(msg);printf("%d\n",__LINE__);return -1;}while(0)
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <time.h>
#include <pwd.h>
#include <grp.h>
#endif

代码

#include <myhead.h>
int main(int argc, const char *argv[])
{pid_t set=fork();if(set>0){FILE *fp=fopen("./01_txt","r");if(fp==NULL){ERR_MSG("fopen error");}FILE *fp_w=fopen("./02_txt","w+");if(fp_w==NULL){ERR_MSG("fopen error");}fseek(fp,0,SEEK_END);long len=ftell(fp);fseek(fp,0,SEEK_SET);char a;for(int i=0;i<len/2;i++){a=0;fread(&a,1,1,fp);fwrite(&a,1,1,fp_w);}}else if(set==0){FILE *fp=fopen("./01_txt","r");if(fp==NULL){ERR_MSG("fopen error");}FILE *fp_w=fopen("./03_txt","w+");if(fp_w==NULL){ERR_MSG("fopen error");}fseek(fp,0,SEEK_END);long len=ftell(fp);fseek(fp,len/2,SEEK_SET);char a;for(int i=0;i<len/2;i++){a=0;fread(&a,1,1,fp);fwrite(&a,1,1,fp_w);}}else if(set==-1){ERR_MSG("fork error");}return 0;
}

现象

在这里插入图片描述

三、牛客网刷题

在这里插入图片描述
在这里插入图片描述

http://www.xdnf.cn/news/16954.html

相关文章:

  • 1.2 医学影像处理基本概念
  • 【OpenAI API】API接口介绍
  • Mac桌面仿制项目--让ai一句话生成的
  • ROS2机器人编程新书推荐-2025-精通ROS 2机器人编程:使用ROS 2进行复杂机器人的设计、构建、仿真与原型开发(第四版)
  • kraft的设计与实现
  • Matlab 高斯牛顿法拟合曲线
  • 机器学习——决策树(DecisionTree)
  • Flutter Dart类的使用
  • Petalinux 23.2 构建过程中常见下载错误及解决方法总结
  • k8s+isulad 国产化技术栈云原生技术栈搭建3-master节点安装
  • 音视频学习(四十九):音频有损压缩
  • TVS二极管数据手册解读
  • Android系统模块编译调试与Ninja使用指南
  • Spring AOP_2
  • 【大模型篇】:GPT-Llama-Qwen-Deepseek
  • Linux进程启动后,监听端口几分钟后消失之问题分析
  • 【游戏比赛demo灵感】Scenario No.9(又名:World Agent)
  • 基于pytorch深度学习笔记:3.GooLeNet介绍
  • RT-Thread **标准版(Standard)** 和 **智能版(Smart)
  • LLM - AI大模型应用集成协议三件套 MCP、A2A与AG-UI
  • Rust 同步方式访问 REST API 的完整指南
  • 04.Redis 的多实例
  • Linux 文件系统基本管理
  • go 中的 fmt 占位符
  • 【lucene】ByteBufferGuard
  • RabbitMQ面试精讲 Day 9:优先级队列与惰性队列
  • 深度学习中的三种Embedding技术详解
  • 【内容规范】关于标题中【】标记的使用说明
  • 02.Redis 安装
  • 浅窥Claude-Prompting for Agents的Talk