sni*_*per 3 assembly linker gdb
以下全局变量被导入到汇编文件中。
.global _sbss /* Start of .bss in RAM */
.global _ebss /* End+1 of .bss in RAM */
Run Code Online (Sandbox Code Playgroud)
通过gdb,我怎样才能得到这些值?当我尝试打印 _ebss 时,我得到以下信息:
(gdb) print _ebss
$1 = 106 'j'
Run Code Online (Sandbox Code Playgroud)
不明白楼上什么意思。我期待在 RAM 中的地址。
要打印符号的地址,请使用取地址运算符 ( &):
(gdb) print &_ebss
$1 = ...
Run Code Online (Sandbox Code Playgroud)
否则,gdb 打印存储在符号地址处的值。