静态变量的地址

时间:2019-03-10 16:28:35

标签: c memory

我试图了解C的内存模型,并编写了以下代码:

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

static int addr0 = 2;
static int addr1;
printf("- addr0: %p\n", & addr0);
printf("- addr1: %p\n",&addr1);
return 0;
}

输出为:

- addr0: 0x55e8f4094010
- addr1: 0x55e8f4094018

我不明白为什么这些变量之间的差异是8而不是4,因为它们是按顺序分配的。 另外,它们在哪里分配? .bss?数据?

0 个答案:

没有答案