セクションアドレス演算子の一覧を表 4.11に示します。
| 
 | 
 | 
 | 
| 
 
1 
 | 
 
__sectop("<セクション名>") 
 | 
 
<セクション名>の先頭アドレスを返します。 
 | 
| 
 
2 
 | 
 
__secend("<セクション名>") 
 | 
 
<セクション名>の先頭アドレスに、<セクション名>のサイズを加算した値を返します。 
 | 
| 
 
3 
 | 
 
__secsize("<セクション名>") 
 | 
 
<セクション名>のサイズを返します。 
 | 
 
[型]
__sectop の型は、void * です。
__secendの型は、void * です。
__secsizeの型は、unsigned long です。
 
[例]
例1: __sectop, __secend
#include <machine.h> 
#pragma section $DSEC 
static const struct {
    void *rom_s; /* 初期化データセクションのROM 上の先頭アドレス */ 
    void *rom_e; /* 初期化データセクションのROM 上の最終アドレス */ 
    void *ram_s; /* 初期化データセクションのRAM 上の先頭アドレス */ 
} DTBL[]={__sectop("D"), __secend("D"), __sectop("R")};
  
#pragma section $BSEC 
static const struct {
    void *b_s; /* 未初期化データセクションの先頭アドレス */ 
    void *b_e; /* 未初期化データセクションの最終アドレス */ 
} BTBL[]={__sectop("B"), __secend("B")};
#pragma section 
#pragma stacksize si=0x100 
#pragma entry INIT 
void main(void); 
void INIT(void) 
{
    _INITSCT(); 
    main(); 
    sleep(); 
} 
 | 
 
 
例2: __secsize
/* size of section B */ 
unsigned int size_of_B = __secsize("B");
 | 
 
[備考]
PIC/PID機能が有効なアプリケーションの場合、__sectopおよび__secendはリンク時のアドレスで処理します。
PIC/PID機能の詳細は、picおよびpidオプションと、「8.5  PIC/PID機能の利用」の項目をそれぞれ参照してください。