ホームページ  >  に質問  >  本文

c++ - 为什么指针变量 的sizeof()打印出来的都是 4;

PHP中文网PHP中文网2713日前1216

全員に返信(5)返信します

  • 阿神

    阿神2017-04-17 14:34:34

    指针所占字节数跟处理器位数有关系,32位处理器就是4个字节,虽然你可能是64位处理器,但要看你是否是64位程序,所以只要int是4个字节,那指针就还是4个字节

    返事
    0
  • 天蓬老师

    天蓬老师2017-04-17 14:34:34

    指针保存的是一个地址,而不是其他的任何数据。。。所以大小都是固定的

    返事
    0
  • ringa_lee

    ringa_lee2017-04-17 14:34:34

    32位下指针是4字节,64位下是8字节。
    4字节最多能表示4G。

    指针就像门牌号,无论是大别墅也好,小店面也好,在门牌号上并看不出区别。
    它代表的仅仅是一个地址,跟地址的内容无关

    返事
    0
  • 阿神

    阿神2017-04-17 14:34:34

    指针所指向的是地址,作为32位的机子,那么地址是4*8=32位的,也就是32位机子下的指针大小为4;
    若作为64位机子,那么地址是8*8=64位,也就是64位机子下面指针大小为8;

    返事
    0
  • ringa_lee

    ringa_lee2017-04-17 14:34:34

    如楼上有说,指针就像门牌号,不管是指向多么大面积的房子,门牌号都是4位。

    返事
    0
  • キャンセル返事