首頁  >  問答  >  主體

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

PHP中文网PHP中文网2713 天前1215

全部回覆(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
  • 取消回覆