luken 发表于 2017-4-23 17:55:35

x86-64设备上存放int数据

x86-64设备上存放int数据占四个字节,但是地址是八个字节的???

luken 发表于 2017-4-23 18:02:20

#include <stdio.h>

int main()
{
      int a = {=3,=5,=8};
      int i;
      for(i=0;i<10;++i)
      {
                printf("%d\n",a);
      }
      printf("%d\n%d\n%d\n",sizeof(a),sizeof(&a),sizeof(&a));
      int j = 4;
      printf("%d\n%d\n",j,sizeof(&j));
      return 0;
}

聆云 发表于 2017-4-23 18:37:27

这不冲突,64位系统可寻址的内存地址比32位系统大很多,当然要用大点的数表示了

Krant5 发表于 2017-4-27 14:13:18

这有什么影响呢?主要是看编译器是32位还是64位,地址就是多少位
页: [1]
查看完整版本: x86-64设备上存放int数据