gpt4 book ai didi

c - buf(main函数中的局部变量)的地址是多少?

转载 作者:行者123 更新时间:2023-12-02 01:44:04 24 4
gpt4 key购买 nike

我在 C 类(class)中进行了编程练习,并遵循了以下问题:

buf(main函数中的局部变量)的地址是多少?以十六进制格式(0x 后跟 8 个“数字”0-9 或 a-f,如 0xbfff0014)或十进制格式输入答案。注意这里我们需要的是 buf 的地址,而不是它的内容。

代码如下:

int main(int argc, char *argv[]) {

while(1) {
char buf[1024] = {0};
int r;
....

所以我运行了 gdb 并将断点放在 char buf[1024] 行并输入 gdb

 p &buf

这给了我一个结果:0xbffff0f0

但是当我在这个测验中使用这个数字时,它给我的结果是这个值不正确。

我的问题是:这是 buf 变量的 (p &buf) 地址吗?或者,如果没有,为什么不呢?

练习是在 VirtualBox 准备好的机器上进行的,所以我认为每个人都应该有相同的地址

最佳答案

没有正确的数字答案。该地址可能因时间而异。你说的是编程练习。以下三个语句都为我提供了相同的地址。

printf ("0x%08x\n", buf);
printf ("0x%08x\n", &buf[0]);
printf ("0x%08x\n", &buf);

关于c - buf(main函数中的局部变量)的地址是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26742050/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com