(1)#pragma startup function-name <priority>
(2)#pragma exit function-name <priority>
含义如下:
第一个pragma表示在main函数被call之前先call名为function-name这个函数。
第二个pragma表示在程序通过调用_exit退出之前,先call名为function-name这个函数。
但是function-name这个函数,必须是不携带参数,且不返回值的函数,即:void func(void);
(3)关于optional的priority
这个优先级是可选的,但是必须在[64, 255]这个闭区间内。
[1, 63]这个区间的优先级是用作ISO的startup和shutdown机制使用的,不要将优先级定义在此区间内。
如果不设定优先级,则默认设置为100。