ZHCUAV7Z september 1995 – march 2023 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , AM1705 , AM1707 , AM1802 , AM1806 , AM1808 , AM1810 , AM5K2E04 , OMAP-L132 , OMAP-L137 , OMAP-L138 , SM470R1B1M-HT , TMS470R1A288 , TMS470R1A384 , TMS470R1A64 , TMS470R1B1M , TMS470R1B512 , TMS470R1B768
要访问表示地址的由链接器定义的符号,请使用 _symval 内置运算符获取符号的值来作为指针值。
例如,链接器符号 _TI_STACK_END 表示一个地址。要在 C/C++ 代码中获取符号的值来作为指针值,请使用以下语法:
extern void __TI_STACK_END;
void *get_stack_end() { return (void*)_symval(&__TI_STACK_END); }
尽管链接器符号 __TI_STACK_END 是一个地址,因此看起来非常像 C/C++ 指针值,但您无法直接将 C/C++ 变量 __TI_STACK_END 定义为指针变量并省略获取符号的地址。有关详细信息,请参阅节 8.6.4。下面是一个错误 示例。
extern void * __TI_STACK_END;
void *get_stack_end() { return __TI_STACK_END; } // wrong, missing &