Linux 获取子进程的返回值
父进程 a1:a1.c#include#includeint main(int argc, char* argv){printf("a1 run\n");int n = system("./a2");printf("a2 return: %d\n", WEXITSTATUS(n));return 0;}子进程a2:a2.c
·
父进程 a1:
a1.c
子进程a2:
a2.c
编译:
gcc a1.c -o a1
gcc a2.c -o a2
运行:
./a1
a2 run
a2 return: 2
a1.c
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char* argv)
{
printf("a1 run\n");
int n = system("./a2");
printf("a2 return: %d\n", WEXITSTATUS(n));
return 0;
}
子进程a2:
a2.c
#include <stdio.h>
int main(int argc, char* argv)
{
printf("a2 run\n");
return 2;
}
编译:
gcc a1.c -o a1
gcc a2.c -o a2
运行:
./a1
输出:
a2 run
a2 return: 2
更多推荐
已为社区贡献5条内容
所有评论(0)