标签:c99 closed ide turn eve %s rem str 简单的
通过一个简单的例子介绍一下gcc的__attribute__ ((constructor))属性的作用。gcc允许为函数设置__attribute__ ((constructor))和__attribute__ ((destructor))两种属性,顾名思义,就是将被修饰的函数作为构造函数或析构函数。程序员可以通过类似下面的方式为函数设置这些属性:
void funcBeforeMain() __attribute__ ((constructor));
void funcAfterMain() __attribute__ ((destructor));
1 #include <stdio.h> 2 3 void __attribute__((constructor)) funcBeforeMain() 4 { 5 printf("%s...\n", __FUNCTION__); 6 } 7 8 void __attribute__((destructor)) funcAfterMain() 9 { 10 printf("%s...\n", __FUNCTION__); 11 } 12 13 int main() 14 { 15 printf("main...\n"); 16 return 0; 17 }
运行结果:
funcBeforeMain...
main...
funcAfterMain...
GCC的__attribute__ ((constructor))和__attribute__ ((destructor))
标签:c99 closed ide turn eve %s rem str 简单的
原文地址:https://www.cnblogs.com/dylancao/p/9293447.html