Linux C 獲取進程退出值的實現(xiàn)代碼
更新時間:2013年05月27日 15:18:39 作者:
本篇文章是對在Linux下使用c語言獲取進程退出值的方法進行了詳細的分析介紹,需要的朋友參考下
如以下代碼所示:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <unistd.h>
#include <errno.h>
int main(int argc, char *argv[])
{
pid_t pid;
int stat;
int exit_code;
pid = fork();
if(pid == 0)
{
sleep(3);
exit(5);
}
else if( pid < 0 )
{
fprintf(stderr, "fork failed: %s", strerror(errno));
return -1;
}
wait(&stat); // 等待一個子進程結(jié)束
if(WIFEXITED(stat)) // 如果子進程通過 return, exit, _exit 正常結(jié)束, WIFEXITED() 返回 true
{
exit_code = WEXITSTATUS(stat);
printf("child's exit_code: %d\n", exit_code);
}
return 0;
}
參考: "man 2 wait"
復(fù)制代碼 代碼如下:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <unistd.h>
#include <errno.h>
int main(int argc, char *argv[])
{
pid_t pid;
int stat;
int exit_code;
pid = fork();
if(pid == 0)
{
sleep(3);
exit(5);
}
else if( pid < 0 )
{
fprintf(stderr, "fork failed: %s", strerror(errno));
return -1;
}
wait(&stat); // 等待一個子進程結(jié)束
if(WIFEXITED(stat)) // 如果子進程通過 return, exit, _exit 正常結(jié)束, WIFEXITED() 返回 true
{
exit_code = WEXITSTATUS(stat);
printf("child's exit_code: %d\n", exit_code);
}
return 0;
}
參考: "man 2 wait"
您可能感興趣的文章:
- c++獲取進程信息列表和進程所調(diào)用的dll列表
- C#網(wǎng)絡(luò)編程基礎(chǔ)之進程和線程詳解
- C#控制IE進程關(guān)閉和緩存清理的實現(xiàn)代碼
- c語言多進程tcp服務(wù)器示例
- c#通過進程調(diào)用cmd判斷登錄用戶權(quán)限代碼分享
- C#獲取Windows進程監(jiān)聽的TCP/UDP端口實例
- 深入C語言內(nèi)存區(qū)域分配(進程的各個段)詳解
- 解析C#中用Process類殺死進程,執(zhí)行命令的深入分析
- C#獲取進程的主窗口句柄的實現(xiàn)方法
- C#獲取進程和對進程的操作
- C++基于CreateToolhelp32Snapshot獲取系統(tǒng)進程實例
相關(guān)文章
C語言結(jié)構(gòu)體數(shù)組同時賦值的另類用法
今天小編就為大家分享一篇關(guān)于C語言結(jié)構(gòu)體數(shù)組同時賦值的另類用法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-12-12error LNK2019: 無法解析的外部符號 問題的解決辦法
error LNK2019: 無法解析的外部符號 問題的解決辦法,需要的朋友可以參考一下2013-05-05C語言使用DP動態(tài)規(guī)劃思想解最大K乘積與乘積最大問題
Dynamic Programming動態(tài)規(guī)劃方法采用最優(yōu)原則來建立用于計算最優(yōu)解的遞歸式,并且考察每個最優(yōu)決策序列中是否包含一個最優(yōu)子序列,這里我們就來展示C語言使用DP動態(tài)規(guī)劃思想解最大K乘積與乘積最大問題2016-06-06C語言編程gcc如何生成靜態(tài)庫.a和動態(tài)庫.so示例詳解
本文主要敘述了gcc如何生成靜態(tài)庫(.a)和動態(tài)庫(.so),幫助我們更好的進行嵌入式編程。因為有些時候,涉及安全,所以可能會提供靜態(tài)庫或動態(tài)庫供我們使用2021-10-10