❶ byte short int long閮芥槸澶氬皯瀛楄妭
char 16浣2涓瀛楄妭 byte 8浣1涓瀛楄妭 short 16浣2涓瀛楄妭 int 32浣4涓瀛楄妭 long 64浣8涓瀛楄妭 float 32浣 4涓瀛楄妭 double 64浣8涓瀛楄妭
❷ 在window32位平台、linux32位平台、Linux64位平台的char int float double 分別為多大
int(4位元組)
long(32位機器上4位元組,64位機器上8位元組)
short(2位元組)
float(4位元組或8位元組)
double(8位元組)
❸ C璇璦鐨刢har錛宻hort錛宨nt鍜宭ong綾誨瀷鍒嗗埆鏈夊氶暱
char灝辨槸1瀛楄妭錛堝滻瀹氫笉鍙橈級錛宻hort涓嶅皯浜2瀛楄妭錛宨nt涓嶅皯浜巗hort錛宭ong涓嶅皯浜4瀛楄妭錛屼笖long涓嶅皯浜巌nt錛宭ong long涓嶅皯浜巐ong銆
闄や簡char錛屽叾浠栨暣鍨嬭寖鍥撮兘鏄鐩稿硅岃█鐨勶紝紜淇濆悗涓縐嶇殑瀹藉害涓嶄綆浜庡墠涓縐嶅嵆鍙錛堝彲鑳界浉絳夛級錛屽湪涓嶅悓鐨勫勾浠o紝璁$畻鏈虹‖浠跺彂灞曚笉鍚岋紝鍐呭瓨銆澶栧瓨瀹歸噺涔熶笉鍚岋紝涓繪祦緙栬瘧鍣鍦ㄨ捐$殑鏃跺欎細緇煎悎鑰冭檻璁$畻鏈虹‖浠剁殑鎯呭喌錛屾潵璁捐℃瘡涓縐鏁版嵁綾誨瀷鐨勫疄闄呭藉害銆
char鍨嬪湪浠諱綍鎯呭喌涓嬮兘鏄鍗1涓瀛楄妭錛岃屾瘮濡俰nt鍨嬶紝瀹冪殑闀垮害涓庣幆澧冪殑瀛楅暱鐩稿悓錛屽湪16浣嶇殑鐜澧冧腑錛屽畠鍗16浣嶏紝2涓瀛楄妭錛32浣嶇幆澧冧腑鍗4涓瀛楄妭銆
鎵╁睍璧勬枡
鍦–璇璦涓鍙浠ョ敤sizeof榪愮畻絎錛岃幏鍙栨暟鎹綾誨瀷鎴栬呭彉閲忔墍鍗犵殑鍐呭瓨瀛楄妭鏁般傜ず渚嬩唬鐮佸備笅錛
#includeintmain()
{
printf("%d %d %d ",sizeof(int),sizeof(short),sizeof(long));
return0;
}
❹ int佔多少位元組
在C/C++語言中,int和long int的所佔的位元組數與編譯器有關。
不過現在常用的編譯器多認為int和long int相同,均為4位元組,short為2位元組,char為1位元組。
如果只輸入int,它是可以包含以上三種形式。
不同的語言不太一樣,例如在Pascal中integer為2位元組,byte為1位元組,而longint為4位元組。
建議您最好參考您的編譯器的具體幫助,以得到更准確的信息。
使用前最好sizeof(int) 看看當前編譯器如何定義的。
依據程序編譯器的不同,int定義的位元組數不同。(數據佔用內存儲器的大小不同)
常用的單片機編譯器,如KEIL下,51類單片機的C語言中,int代表2個位元組(16位);如果是32位RAM處理器的C語言中,則int代表4個位元組(32位)
PIC單片機的PICC中8位系列單片機的C語言里int表示16位。
而不少PC端軟體的編譯器則會根據操作系統或處理器(如64位XP)把int定義為8位元組(64位)
所以在多平台上編程的人員需要在使用時注意。
如需定義16位數,可使用short(短、短整數類型)定義。
(4)linuxshort幾個位元組擴展閱讀:
在一般的電腦中,int佔用4位元組,32比特,數據范圍為-2147483648~2147483647[-2^31~2^31-1]。
在之前的微型機中,int佔用2位元組,16比特,數據范圍為-32768~32767[-2^15~2^15-1]。
使用printf輸出int佔用位元組數量:
除了int類型之外,還有short、long、long long類型可以表示整數。
unsigned int 表示無符號整數,數據范圍為[0~2^32-1]。
參考鏈接:INT(數據類型)_網路