on_exit(設定程式正常結束前調用的函式)
相關函式 _exit,atexit,exit
表頭檔案 #include<stdlib.h>
定義函式 int on_exit(void (* function)(int, void*),void *arg);
函式說明
on_exit()用來設定一個程式正常結束前調用的函式。當程式通過
調用exit()或從main中返回時,參數function所指定的函式會先
被調用,然後才真正由exit()結束程式。參數arg 指針會傳給參
數function函式,詳細情況請見範例。
返回值 如果執行成功則返回0,否則返回-1,失敗原因存於errno中。
範例
#include<stdlib.h>
void my_exit(int status,void *arg)
{
printf(“before exit()!\n”);
printf(“exit (%d)\n”,status);
printf(“arg = %s\n”,(char*)arg);
}
main()
{
char * str=”test”;
on_exit(my_exit,(void *)str);
exit(1234);
}
執行
before exit()!
exit (1234)
arg = test