嵌入式4-2

今日作业:使用文件IO 实现父进程向子进程发送信息,并总结中间可能出现的各种问题

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <fcntl.h>
#include <unistd.h>
int main(int argc, const char *argv[])
{
pid_t res=fork();
if(res>0)
{
int fd1=open("./test.c",O_CREAT|O_WRONLY|O_TRUNC,0664);
if(fd1==-1)
{
perror("open1");
return -1;
}
char str[50]={0};
puts("输入字符");
gets(str);
ssize_t w=write(fd1,str,50);
if(w==-1)
{
perror("write");
return -1;
}
close(fd1);
}else if(res==0)
{
sleep(3);
int fd2=open("./test.c",O_RDONLY);
if(fd2==-1)
{
perror("open2");
return -1;
}
char str1[50]={0};
ssize_t r=read(fd2,str1,50);
if(r==-1)
{
perror("read");
return -1;
}
puts(str1);
close(fd2);
}else if(res==-1)
{
perror("fork");
return -1;
}
return 0;
}

相关推荐
Nebula_g1 小时前
C语言应用实例:背包DP1(Bone Collector、Piggy-Bank、珍惜现在,感恩生活)
算法
roman_日积跬步-终至千里1 小时前
【模式识别与机器学习(5)】主要算法与技术(中篇:概率统计与回归方法)之逻辑回归(Logistic Regression)
算法·机器学习·回归
Promise4856 小时前
贝尔曼公式的迭代求解笔记
笔记·算法
福尔摩斯张8 小时前
Linux进程间通信(IPC)机制深度解析与实践指南
linux·运维·服务器·数据结构·c++·算法
你好~每一天8 小时前
未来3年,最值得拿下的5个AI证书!
数据结构·人工智能·算法·sqlite·hbase·散列表·模拟退火算法
杰克尼8 小时前
3. 分巧克力
java·数据结构·算法
zmzb01038 小时前
C++课后习题训练记录Day39
数据结构·c++·算法
Ayanami_Reii9 小时前
进阶数学算法-取石子游戏(ZJOI2009)
数学·算法·游戏·动态规划·区间dp·博弈论
一只小小汤圆9 小时前
已知圆弧的起点、终点、凸度 求圆弧的圆心
算法
丸码9 小时前
Java HashMap深度解析
算法·哈希算法·散列表