文書番号: 401803
最終更新日: 2004/03/29
<例 1-1> は、「_CODE セグメントに属する int 型の変数 data1 」の宣言です。 <例 1-2> は、「_CODE セグメントに属する 文字列 data2 」の宣言です。このように宣言した変数へのポインタや、ポインタそのものをコードセグメントに
<例 1-1> int __based(__segname("_CODE")) data1; <例 1-2> char __based(__segname("_CODE")) data2[] = "code-based data"; <例 2-1> int __based(__segname("_CODE")) *ptr1; <例 2-2> int __based(__segname("_CODE")) *ptr2=&data1; <例 3-1> int * __based(__segname("_CODE")) ptr2; <例 3-2> int __based(__segname("_CODE")) * __based(__segname("_CODE")) ptr3=&data1;以下のサンプルのアセンブルリスト、マップファイルもご参照ください。
// test.c int __based(__segname("_DATA")) ddata1 =10; int __based(__segname("_CODE")) dcode2 =20; int __based(__segname("_DATA")) *pdata1 =&ddata1; int __based(__segname("_CODE")) *pcode2 =&dcode2; int * __based(__segname("_CODE")) pcode3; int __based(__segname("_CODE")) * __based(__segname("_CODE")) pcode4 =&dcode2; int *p5; void main() { int i=5, j=6; pcode3 = &i; p5 = &j; *pdata1 = 10; *pcode2 = 20; *pcode3 = 30; *pcode4 = 40; *p5 = 50; }
Keywords: KBHOWTO VC10 VC15 KB401803
Technology: kbAudDeveloper kbvc150 kbVCsearch