#pragma用法(1)#pragma startup和#pragma exit

鍾超發表於2011-03-12

最近在學習#pragma的用法,現在記錄兩個作為學習筆記,如下。

(1)先說用法:

#pragma startup function-name <priority> #pragma exit function-name <priority>

含義如下:

第一個pragma表示在main函式被called之前先call名為function-name這個函式。

第二個pragma表示在程式通過_exit退出之前,call名為function-name這個函式。

但是function-name這個函式,必須是不攜帶引數,且不返回值的函式,即:

void func(void);

(2)關於optional的priority

這個優先順序是可選的,但是必須在[64, 255]這個閉區間內。[1, 63]這個區間的優先順序是用作ISO的startup和shutdown機制使用的,不要將優先順序定義在此區間內。如果不設定優先順序,則預設設定為100。

相關文章