⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 temp2.c

📁 linux下的进程开发实例
💻 C
字号:
#include <unistd.h>#include <sys/types.h>#include <sys/wait.h>#include <stdio.h>#include <stdlib.h>#include <errno.h>#include <math.h>/* 进程创建 */void main(void){	pid_t child;	int status;	printf("This will demostrate how to get child status\n");	/* 创建子进程 */	if((child=fork())==-1)	{		printf("Fork Error : %s\n", strerror(errno));		exit(1);	}	else if(child==0) // 子进程	{		int i;		printf("I am the child: %s\n", getpid());		for(i=0;i<1000000;i++) sin(i);		i=5;		printf("I exit with %d\n", i);		exit(i);	}	while(((child=wait(&status))==-1)&(errno==EINTR));  //子进程未结束	if(child==-1)		printf("Wait Error: %s\n", strerror(errno));	else if(!status)             // 子进程退出值为0		printf("Child %ld terminated normally return status is zero\n", child);	else if(WIFEXITED(status))   // 子进程退出值0		printf("Child %ld terminated normally return status is %d\n", child, WEXITSTATUS(status));	else if(WIFSIGNALED(status)) // 子进程未获信号而退出		printf("Chlid %ld terminated due to signal %d not caught\n", child, WTERMSIG(status));}	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -