打印

哪位大侠能结合一面的例子,解读一下“函数注册”和“注

[复制链接]
1339|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sxggj|  楼主 | 2008-10-31 13:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在你的程序遭遇致命错误无法继续时,你需要退出,   
  但是,你在退出之前,要执行一些清理   
  ,比如,关闭文件,清除缓冲区,关闭已经建立的网络连接等等   
  直接执行exit显然是不可能完成这些的,这里就可以用atexit()   
  注册一些在执行exit()之前要执行的函数   
  正常退出时exit()被最后执行   
    
  例子:   
  /*   atexit   example   */   
  #include   <stdio.h>   
  #include   <stdlib.h>   
    
  void   fnExit1   (void)   
  {   
      printf   ("Exit   function   1. ");   
  }   
    
  void   fnExit2   (void)   
  {   
      printf   ("Exit   function   2. ");   
  }   
    
  int   main   ()   
  {   
      atexit   (fnExit1);   
      atexit   (fnExit2);   
      printf   ("Main   function. ");   
      return   0;   
  }   
    
  Output:   
  Main   function.   
  Exit   function   2.   
  Exit   function   1.   
    
  http://www.cplusplus.com/ref/cstdlib/atexit.html   

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

230

主题

1397

帖子

3

粉丝