atexit

atexit - register a function to be called at normal process termination
注册进程正常退出时的回调函数。

       #include <stdlib.h>

       int atexit(void (*function)(void));

 全局变量应用atexit()举例:

#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>

int flag = 0;

void clean(void)
{
    if(flag){
        printf("flag is set.
");
        unlink("a.out");
    }   

}

int main(int argc, char *argv[])
{
    atexit(clean);

    if(argc > 1){ 
        flag = 1;
    }   

    return 0;
}
原文地址:https://www.cnblogs.com/embedded-linux/p/6790104.html