linux中short有幾個(gè)字節(jié)
在Linux中,32位平臺(tái)和64位平臺(tái)中的short都占2個(gè)字節(jié);linux中只有l(wèi)ong長(zhǎng)整型、void(c語(yǔ)言中,void為“不確定類型”)在32位中是4個(gè)字節(jié),在64位中是8個(gè)字節(jié)。
本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。
linux中short有幾個(gè)字節(jié)
看出只有 long(長(zhǎng)整型),void*(c語(yǔ)言中,void為“不確定類型”),在32位4個(gè)字節(jié),在64位8個(gè)字節(jié)。
擴(kuò)展知識(shí)
char占1字節(jié),short占 2 字節(jié),int 、float、long 都占 4 字節(jié),double 占8 字節(jié)
指針長(zhǎng)度和地址總線有關(guān)。因?yàn)橹羔樣涗浀木褪且粋€(gè)地址,那么32位的就是4字節(jié),64位的就是8字節(jié)。
發(fā)現(xiàn)一個(gè)問(wèn)題,以下代碼是在Win10 64位系統(tǒng)下跑的,理應(yīng)來(lái)說(shuō)int占8個(gè)字節(jié),后來(lái)我想錯(cuò)了;我建立的工程是win32控制臺(tái)應(yīng)用,意味著編譯器就是32位的--“int占多少個(gè)字節(jié)既由編譯器決定,也由CPU或虛擬機(jī)或操作系統(tǒng)決定,但歸根結(jié)底是由編譯器決定?!?/p>
64位win10下,codeblocks win32 控制臺(tái)下
#include "iostream" using namespace std; int main() { double *p = NULL; cout<結(jié)果為:
1 2 4 4 4 8 44444由上可知,char占1字節(jié),short占 2 字節(jié),int 、float、long 都占 4 字節(jié),double 占8 字節(jié),任意類型的指針都占4個(gè)字節(jié);
推薦學(xué)習(xí):Linux視頻教程
以上就是linux中short有幾個(gè)字節(jié)的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注其它相關(guān)文章!
版權(quán)聲明:
本站所有文章和圖片均來(lái)自用戶分享和網(wǎng)絡(luò)收集,文章和圖片版權(quán)歸原作者及原出處所有,僅供學(xué)習(xí)與參考,請(qǐng)勿用于商業(yè)用途,如果損害了您的權(quán)利,請(qǐng)聯(lián)系網(wǎng)站客服處理。