网站运营与管理的对策,自学网站建设和seo,品牌网站设计服务,如何做微信下单小程序使用多进程完成两个文件的拷贝#xff0c;父进程拷贝前一半#xff0c;子进程拷贝后一半#xff0c;父进程回收子进程的资源
#includemyhead.h
int main(int argc, const char *argv[])
{char str[100];puts(please input str:);//从终端读…使用多进程完成两个文件的拷贝父进程拷贝前一半子进程拷贝后一半父进程回收子进程的资源
#includemyhead.h
int main(int argc, const char *argv[])
{char str[100];puts(please input str:);//从终端读取字符串到strfgets(str,sizeof(str),stdin);str[strlen(str)-1]0;int plenstrlen(str)/2;//读取字符串的一半FILE *fpNULL;FILE *fp1NULL;//以写的形式打开这两个文件if((fpfopen(./test1.txt,w))NULL){perror(test1 open error);}if((fp1fopen(./test2.txt,w))NULL){perror(test2 open error);}pid_t pid-1;//创建子进程pidfork();if(pid0)//判断是否是父进程{for(int i0;iplen;i){fputc(str[i],fp);//将字符串前半个放入其中}fclose(fp);char buf[20];if((fpfopen(./test1.txt,r))NULL)//写形式打开并且输出{perror(open error);}while(1)//输出{char *ptrfgets(buf,sizeof(buf),fp);if(ptrNULL){break;}printf(父%s\n,buf);}fclose(fp);}else{ for(int iplen;istrlen(str);i)//写入文件{fputc(str[i],fp1);}fclose(fp1);char buf[20];if((fp1fopen(./test2.txt,r))NULL)//只读形式打开{perror(open error);}while(1){char *ptrfgets(buf,sizeof(buf),fp1);//读取文件的内容并输出if(ptrNULL){break;}printf(子%s\n,buf);}fclose(fp1);exit(EXIT_SUCCESS);}wait(NULL);//等进程结束return 0;
}