Unix环境编程学习笔记-----编程实例---- the normal exit1

原创 2015年11月21日 20:24:15

NORMAL :

         Thesource code :

          

#include<unistd.h>

#include<errno.h>

#include<sys/types.h>

#include<sys/wait.h>

#include<stdio.h>

#include<stdlib.h>

 

 

 

 

 

int main()

{

         intPpid_t,Spid_t,rpid_t;

         inttmpstatus;

        

         Spid_t=fork();

        

         if(Spid_t<0)

         {

                   perror("forkerror");

                   _exit(-1);

                  

         }elseif(Spid_t==0)

                            {

                                     //子进程要做的事。

                                     printf("subprocess is going to over!\n");

                                     _exit(0);//wheni change the doc what will happen ???? example : _exit(2)  ???

                                    

                            }

                            else

                            {

                                     //父进程要做的事。

                                     //父进程获取子进程的结束状态,并打印出来

                                    

                                     //我先使用waitpid

                                    

                                     rpid_t=waitpid(Spid_t,&tmpstatus,NULL);

                                    

                                    

                                     //如果正常推出则打印出进程终止装填的编号  WIFEXITED(status)

                                    

                                     if(WIFEXITED(tmpstatus))

                                       {

                                                printf("the status's value is :%d\n",WEXITSTATUS(tmpstatus));

                                                

                                       }

                                       else if(WSTOPSIG(tmpstatus))  //判断子进程是不是由信号杀死,如果是打印该信号值。

                                                        printf("thesignal value is :%d \n",WTERMSIG(tmpstatus));

                                    

                                     _exit(2);

                                      

                                      

                            }

         return0;

}

 

运行结果:

          

    

COM编程精彩实例--COM通信

COM是如何进行通信的: ////// ①代理/桩子或COM DLL将方法的调用参数转化成NDR格式; ②COM调用RPC将格式化的数据传递给服务器端的COM代理/桩...
  • zang141588761
  • zang141588761
  • 2016年12月22日 14:17
  • 185

Linux下多线程编程实例解析

提到线程,不得不让人想起进程,所以还是先写下进程与线程的区别吧! 一、进程与线程的区别 进程是程序执行的一个实例,进程有其自己独立的地址空间。一个线程可以含有多个线程,这也是为了提高系统资...
  • GQ1900
  • GQ1900
  • 2016年04月07日 20:01
  • 1703

Linux下shell编程示例

什么是shell?Shell是一个命令解析器,是介于Linux操作系统的内核(kernel)与用户之间的一个绝缘层。shell脚本就是讲各类命令预先放入其中,方便一次性执行的一个程序文件,主要用于方便...
  • you_shou
  • you_shou
  • 2016年09月30日 16:50
  • 2288

自学Python day6--------面向对象编程(类和实例)

自学Python day6——–面向对象编程(类和实例)1.类和实例 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类...
  • hident
  • hident
  • 2017年02月25日 15:00
  • 237

初识Shell Scripts编程--最最简单的shell例子

前段时间因为要往一个文件写入一系列随机数给大家用,自己用C语言写了一个,把源文件发给大家,然后大家还要编译,运行,有时候里面的代码需要修改重新编译运行,很是麻烦,其实这些都可以用简单的Shell Sc...
  • lavorange
  • lavorange
  • 2013年07月31日 21:55
  • 2862

ADO数据库编程详解(C++)----初级入门篇

一、概述         ADO即Microsoft ActiveXData Object,是Microsoft继ODBC之后,基于OLE DB技术的一种数据库操作技术,使您能够编写通过...
  • MingoJiang
  • MingoJiang
  • 2013年01月22日 22:40
  • 15918

通过生活中例子模拟java面向接口编程实例

面向接口编程的例子,生活中的实例来说明接口的概念,对理解java接口有很大帮助!...
  • 5iasp
  • 5iasp
  • 2014年01月08日 18:27
  • 6364

Linux信号量编程实例

http://blog.csdn.net/xiajun07061225/article/details/8475738 信号量概述 信号量定义: 它是一个特殊变量,只允许对它进行等待和发送信号这...
  • bytxl
  • bytxl
  • 2013年06月13日 09:08
  • 890

Linux下编写C++实例程序(三)

实例1   Point类的完整程序   知识点:学习复制构造函数,比较它与普通构造函数的区别。普通构造函数是在对象创建时被调用,而复制构造函数是在以下3种情况下都会被调用,分别为:   ① 当用...
  • mybelief321
  • mybelief321
  • 2013年06月16日 10:17
  • 3088

<MFC笔记>多线程编程简单实例

在windows下,我们可以调用SDK win32 api来编写多线程的程序,下面就此简单的讲一下: 创建线程的函数 HANDLE CreateThread( LPSECURITY_ATTRIB...
  • EbowTang
  • EbowTang
  • 2014年06月10日 20:51
  • 1543
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Unix环境编程学习笔记-----编程实例---- the normal exit1
举报原因:
原因补充:

(最多只允许输入30个字)