为什么在64位系统中指针的大小是8,而32位系统中却是4?
生活随笔
收集整理的這篇文章主要介紹了
为什么在64位系统中指针的大小是8,而32位系统中却是4?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
為什么在64位系統中指針的大小是8,而32位的卻是4??
64位系統,這個位數指的是CPU 里面的通用寄存器的數據寬度為64位,也就是說一個地址占二進制位數是64,所以:
sizeof(double *)==sizeof(int *)==sizeof(char *)==64/8==8
32位系統,同理,他的一個地址占32位二進制空間,sizeof(double *)==sizeof(int *)==sizeof(char *)==32/8==4
其實明白了兩個系統的尋址原理就能明白,大體就是這個原因。地址跟系統有關,但是基本數據類型占的大小是由C語言本身決定。
總結
以上是生活随笔為你收集整理的为什么在64位系统中指针的大小是8,而32位系统中却是4?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GetMemeory(char *p);
- 下一篇: 如何在C中为一个数组分配空间?