ANSI C 的标准库中,有一个atexit()的函数。如果使用这个函数,当程序正常结束的时候,可以调回一个指定的一个函数。
原型定义如下
int atexit(void (*func)(void));
怎么看呢?
1.着眼于标识符。 int atexit(void (*func)(void));
2.解释用于函数的()。
int atexit(void (*func)(void));
英语的表达式为:
atexit is function() returning
3.函数参数部分比较复杂,先解析这个部分。同样,先着眼于标识符。
int atexit(void (*func)(void));英语表达式为:atexit is function(func is) returning4.因为有括号,解释 “ * ” 。int atexit(void (*func)(void));
英语表达式为:
atexit is function(fun is pointer to) returning
5.解释用于函数的()。这里的参数是void(无参数)。
int atexit(void (*func)(void));
英语表达式:
atexit is function(func is pointer to function (void)returning )returning
6.解释类型指定符void。从而结束了对atexit 的参数部分的解释
英语表达式:
atexit is function(func is pointer to function (void)returning void)returning
7.解释数据类型符int
英语表达式:
atexit is function(func is pointer to function (void)returning )returning int
8.翻译成中文……
atexit 是返回int的函数(参数是指向返回void 没有参数的函数的指针)。