逻辑很简单,我的第一个.C文件颠倒一个字符串。第2个c文件转换大小写。现在在我的第一个c文件里加上 fork() 产生一个子程序,在这个子程序里进行叫第个文件的操作。主程序等子程序文成后退出。下面是我写的请帮我修改一下: // 主程序#include <stdio.h>#include <string.h>#include <unistd.h>#include <sys/types.h>#define STR_LENGTH 50int main(){ char str[STR_LENGTH]; char *temp; int i; pid_t pid; int status; pid_t s; printf("please insert an single string: "); gets(str); strrev(str); printf("the string entered is: %s/n",str); pid = fork(); if(pid<0) // error occurred { fprintf(stderr,"fork failed"); exit(-1); } else if (pid == 0) // child process { printf("child pid = %d /n", getpid()); if (execl("/bin/proc2.c", "prog2, NULL)<0); { printf( " Command not found /n"); exit(1); } else // parent process { printf(" I am the parent/n"); s = wait(&status); if(s != -1) printf(" Parent detect child process# %d is done/n", s); } return 0;}//被叫的程序#include <stdio.h>#include <string.h>#include <ctype.h>#include <unistd.h>#include <sys/types.h>#define STR_LENGTH 50int main(){ char str[STR_LENGTH]; char *temp; int i; printf("please insert an single string: "); gets(str); for(i=0;i<strlen(str);i++) { if( isupper( str[i])) str[i] = tolower(str[i]); else str[i] = toupper( str[i]); } printf("the string entered is: %s/n",str); return 0;}
测试结果 输入:haPPy 输出:YppAH这就可以了。
|