免费小程序网站,wordpress升级失败,企业网站续费,程序员接外包网站1、静态局部变量在程序加载时初始化#xff0c;静态局部变量的初始值写入到了data段#xff1a; 如下代码test_symbol.c
int f()
{static int x 0;return x;
}int g()
{static int x 9;return x;
}使用命令gcc -c test_symbol.c -o test_symbol 编译 使用命令 readelf -a …1、静态局部变量在程序加载时初始化静态局部变量的初始值写入到了data段 如下代码test_symbol.c
int f()
{static int x 0;return x;
}int g()
{static int x 9;return x;
}使用命令gcc -c test_symbol.c -o test_symbol 编译 使用命令 readelf -a test_symbol 读取目标文件其中 可以得到 data段从文件地址0x58开始长度为4字节。 使用命令 hexdump -C test_symbol 把目标文件的字节全部打印出来 可以看到0x58处的值为9即静态局部变量初始值写入到目标文件中