limit_lmt 2016-02-06 07:41 采纳率: 80%
浏览 2939
已采纳

一个int型变量占用4字节,那他的二进制地址是多长?

一个存储单元的地址不是16位吗?我弄不懂啊~~~~求指教指教图片说明图片说明图片说明图片说明

  • 写回答

4条回答 默认 最新

  • 林深 2016-02-06 08:22
    关注

    比如说,你定义了一个变量a,int a;那么内存中会为你分配4个字节大小的空间来存放a,int变量占用4个字节指的就是存放这个变量的值的内存空间大小为4个字节。
    而二进制地址的话指的是内存中会为a存一份指针,当你要使用a的时候,就会通过这个指针去找内存中a的值,假如把a比作房间的话,那么指针就是门牌号。而这个指针(其实里面存放的就是二进制地址)的长度的话是不定的,会和你的系统的位数相对应,一般来说如果你是32位的机器,那么就是32位,如果是16位的话那么就是16位。
    你可以输出 sizeof(int *)的值来验证一下。
    地址跟系统有关,但是基本数据类型占的大小是由C语言本身决定。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?