㈠ 在c語言中 佔用的內存
那個一般是以前的系統了16位的
現在一般是32位
不同的計算機他們的字母
數字等所佔位元組數不同。
但是一個字元一般都只佔一個位元組
而整數一般占
2個或4個位元組
在C語言中
有個sizeof函數。
你定義個整數
i
n
int
i,n;
n=sizeof(i);
再輸出n的只看是幾
就代表幾位了。。
printf("%d",n);
字元就用
char
i;
int
n;
還有實型
float
i;
int
n;
㈡ 指針佔用內存嗎
無聊中,看了說二句。
1、指針是不佔用內存空間的,其本身是地址,地址怎麼會占內存空間。指針變數才佔用內存空間。
2、char *month_name[13]={"illeg //month_name是指向字元數組的指針變數。他才佔用內存空間,其指向的是數組的第一元素的首地址。也就是說該指針變數存的是數組的第一元素的首地址。調用時要用此地址進行計算如:month_name[0];month_name[1];
month_name[8];(month_name+12);/*此為地址調用。*/ *(month_name+12);/*此為數組元素調用*/ 等等。
3、至於多大就要看你的機器存一個地址要多大內存空間了^&&^
㈢ 指針佔用的內存是固定的嗎
所有類型指針的大小都是一樣的,因為它所存的只是一個地址,而這個地址的長度在內存中是固定的,一般都是4位元組。你可以用sizeof自己試一試。這是C語言的標准。
㈣ C語言中一個指針佔用多少位元組
一個指針變數在內存中占兩個位元組(small模式編譯),一個指針變數在內存中佔四個位元組(32位機器上),一般都是32位機器的,所以四個位元組咯。
指針即為地址,指針幾個位元組跟語言無關,而是跟系統的定址能力有關。
指針是一個特殊的變數,它裡面存儲的數值被解釋成為內存里的一個地址。要搞清一個指針需要搞清指針的四方面的內容:指針的類型、指針所指向的類型、指針的值或者叫指針所指向的內存區、指針本身所佔據的內存區。
(4)c語言指針占的內存都一樣嗎擴展閱讀
1、指針的類型
從語法的角度看,你只要把指針聲明語句里的指針名字去掉,剩下的部分就是這個指針的類型。這是指針本身所具有的類型。讓我們看看例一中各個指針的類型:
(1)int*ptr;//指針的類型是int*
(2)char*ptr;//指針的類型是char*
(3)int**ptr;//指針的類型是int**
(4)int(*ptr);//指針的類型是int(*)
(5)int*(*ptr);//指針的類型是int*(*)
2、指針所指向的類型
當你通過指針來訪問指針所指向的內存區時,指針所指向的類型決定了編譯器將把那片內存區里的內容當做什麼來看待。
從語法上看,你只須把指針聲明語句中的指針名字和名字左邊的指針聲明符*去掉,剩下的就是指針所指向的類型。例如:
(1)int*ptr; //指針所指向的類型是int
(2)char*ptr; //指針所指向的的類型是char
(3)int**ptr; //指針所指向的的類型是int*
(4)int(*ptr); //指針所指向的的類型是int()
(5)int*(*ptr); //指針所指向的的類型是int*()
㈤ c語言中指針佔多少個位元組
指針佔位元組數和編譯器有關.
如果是16位編譯器,那麼指針佔2位元組.
如果是32位編譯器,那麼指針佔4位元組
如果是64位編譯器 那麼指針佔8位元組.
即 指針位數和編譯器位數相同.
㈥ 指針的數據類型為什麼要跟所指向的數據的類型一致,不是說所有的指針變數佔用的內存大小是相同的嗎
所有的指針變數佔用的內存大小是相同的,這個內存中保存的不是數據的值,而是指針的值,指針的值是一個內存地址,也就是指針指向數據的首地址,根據這個地址只能得到指針指向數據的開始位置,並不知道這是什麼類型的數據,所以指針的類型就決定了數據的類型
㈦ 在C語言中一個指針佔用多少位元組。
指針即為地址,指針幾個位元組跟語言無關,而是跟系統的定址能力有關。譬如以前是16為地址,指針即為2個位元組,現在一般是32位系統,所以是4個位元組,以後64位,則就為8個位元組。
(7)c語言指針占的內存都一樣嗎擴展閱讀:
1)指針的含義
指針不同於一般變數,存的是變數的地址,在同一架構下地址長度都是相同的(cpu的最大定址內存空間),所以不同類型的指針長度都一樣比如說一個char1位元組,可以存在0x0,也可以位於0xFFFFFFFF,比如你的32位系統。
2)指針的范圍
指針長度為4,在64位操作系統下那麼就都是8了,而和char佔用1位元組還是100位元組無關,指針的范圍只和機器字和系統有關。
3)變化的范圍
如果你輸出的是444,說明指針長度為4位元組可以記錄的地址范圍是0x00000000~0xFFFFFFFF,這個范圍才是指針變數的值。
4)指針的介紹
指針是一個特殊的變數,它裡面存儲的數值被解釋成為內存里的一個地址。要搞清一個指針需要搞清指針的四方面的內容:指針的類型、指針所指向的類型、指針的值或者叫指針所指向的內存區、指針本身所佔據的內存區。
㈧ 判斷題:C語言中字元型的指針變數和實型的指針變數所佔用的空間是相同的。
所有指針變數佔用4個位元組,用於存儲起始地址與空間量,2位元組存儲起始地址,2位元組存儲指向數據所使用空間量。
所以字元型指針和實型指針的空間使用量是一樣的,都是4位元組。
㈨ 判斷題:C語言中字元型的指針變數和實型的指針變數所佔用的空間是相同的。
正確,首先:指針變數的定義是用於存儲變數地址的變數.那麼這個變數的大小就與變數地址的大小一樣,而變數地址多大呢?這個與用多少位的系統有關,比如,你用32位系統,那麼地址就是32位,你用64位系統,那麼地址就是64位.在一個系統內,所有的變數的地址的大小都是一樣的,就這個題,整型,字元型,實型,地址的大小一致.所以指針變數的大小也就相同了.生活中比較類似的是手機號,不管是哪個地區的手機號,大小都是11位的,北京,河北,山東......都一樣大小.