fork_descriptor.c
来自「linux下的程序开发(C语言实现):本程序主要实现linux下进程的管理」· C语言 代码 · 共 52 行
C
52 行
#include <sys/types.h>#include <stdio.h>#include <unistd.h>#include <fcntl.h>#include <string.h>#include <stdlib.h>int main(int argc,char *argv[]){ pid_t pid; int fd; int i=1; int status; char *ch1="hello"; char *ch2="world"; char *ch3="IN"; if((fd=open("test.txt",O_RDWR|O_CREAT,0644))==-1) { perror("parent open"); exit(EXIT_FAILURE); } if(write(fd,ch1,strlen(ch1))==-1) { perror("parent write"); exit(EXIT_FAILURE); } if((pid=fork())==-1) { perror("fork"); exit(EXIT_FAILURE); } else if(pid==0) { i=2; printf("in child\n"); printf("i=%d\n",i); if(write(fd,ch2,strlen(ch2))==-1) perror("child write"); return 0; } else { sleep(1); printf("in parent\n"); printf("i=%d\n",i); if(write(fd,ch3,strlen(ch3))==-1) perror("parent,write"); wait(&status); return 0; }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?