在gcc中,可以使用attribute关键字,声明constructor和destructor,代码如下:
代码:
#include <stdio.h>
__attribute((constructor)) void before_main()
{
printf("%s\n",__FUNCTION__);
}
__attribute((destructor)) void after_main()
{
printf("%s\n",__FUNCTION__);
}
int main(int argc, char **argv)
{
printf("%s\n",__FUNCTION__);
return 0;
}
~
结果:
before_main
main
after_main
参考:
http://www.jb51.net/article/41942.htm