配置する領域(セクション)を変更するには,#pragma section指令で属性指定文字を指定します。
#pragma section gp_disp16 "mysdata" int a = 1; /*mysdata.sdataセクションに配置する*/ int b; /*mysdata.sbssセクションに配置する*/ #pragma section default |
#pragma section指令の詳細な使用方法は,「4.2.4.1 関数とデータのセクション割り当て」を参照してください。
なお,#pragma section指令を使った変数を別のソース・ファイルの関数から参照する場合には,参照する側のファイルで,該当する変数を同じ#pragma section指令付きでextern宣言する必要があります。
定義と宣言で指定が異なり,指定したセクション属性ではアクセスできない場合に,以下のエラーを出力します。
#pragma section zconst const unsigned char table_data[9] = {1, 2, 3, 4, 5, 6, 7, 8, 9}; /*.zconstセクションに配置する*/ #pragma section default |