fork函数小东西
来源:互联网 发布:图纸软件下载 编辑:程序博客网 时间:2024/05/20 00:15
刚开始学进程、看到例程就自己也想到了一个,敲出来后运行下、和预想的一样;
除了书本没有什么师傅的弱菜忍不住赶紧来卖弄一下,上代码:
子进程负责随机生成100个字符;
父进程负责将这100个字符重新输出到另外一个文件中、同时将其中的小写字符变成大写字符:
#include"sys/types.h"#include"sys/wait.h"#include"unistd.h"#include"stdio.h"#include"stdlib.h"#include"math.h"int main(){pid_t pid;char *message;int exit_code;printf("fork program starting\n");pid = fork();if(pid != 0 && pid != -1){int stat_val;pid_t child_pid;child_pid = wait(&stat_val);printf("Child has finished: PID = %d\n", child_pid);if(WIFEXITED(stat_val))printf("Child has finished: PID = %d\n", WEXITSTATUS(stat_val));elseprintf("Child terminated abnormally\n");}if(pid == -1){perror("fork failed");exit(1);}else if(!pid){int i,temp;FILE *write;srand((int)time(0));write = fopen("/home/hello/c++_test/hehe", "w");for(i = 0; i < 100; i++){temp = abs( rand() ) % 127;fprintf(write, "%c", temp);}(void)fclose(write);exit_code = 36;}else{int i;char ch;FILE *input, *output;input = fopen("/home/hello/c++_test/hehe", "r");output = fopen("/home/hello/c++_test/hehe2", "w");while((ch = fgetc(input)) != EOF){if('a' <= ch && ch <= 'z')ch-=32;fprintf(output, "%c", ch);}(void)fclose(input);(void)fclose(output);exit_code = 0;printf("ok~\n");}exit(exit_code);}
- fork函数小东西
- 小东西
- 【小东西】
- 小东西
- 小东西
- 小东西
- fork与fork函数
- fork函数
- fork 函数
- fork() 函数
- fork函数
- fork函数
- fork函数
- fork函数
- fork函数
- fork()函数
- fork函数
- fork()函数
- 深入javascript引擎对脚本的处理过程
- Cocos2d-x相关的博客以及官网信息
- Yacc介绍与使用
- 最受欢迎的开源项目
- 制作照片边框 初学者 ps
- fork函数小东西
- 语法分析——Bison介绍以及Flex、Bison联合编译
- 避免表单的重复提交
- CCSequence::create 崩溃
- 顺序表基本操作(Java)
- hdu-2025-查找最大元素
- Bison生成文件分析
- sql第一章总结函数 select into from
- 发现大量的TIME_WAIT解决办法