Ⅰ 誰跟我說說在C,C++,java中int,char,各占幾個位元組好么
C/C++中的int佔4個位元組,char佔1個位元組;Java中的int佔4個位元組,char卻佔1~6個位元組,要根據使用的編碼和具體字元而定。
目前在一般的電腦中,int佔用4位元組,32比特,數據范圍為-2147483648~2147483647,也就是-2^31~2^31-1。
C/C++,char是單字元數據類型,只佔1個位元組。
Java中,內碼(運行內存)的char使用UTF16的方式編碼,一個char佔用兩個位元組,但是某些字元需要兩個char來表示。所以,一個字元會佔用2個或4個位元組。
Java中,外碼中char使用UTF8的方式編碼,一個字元佔用1~6個位元組。
(1)int幾個位元組java擴展閱讀:
Java和C++的差異:
Java看起來設計得很像C++,但是為了使語言小和容易熟悉,設計者們把C++語言中許多可用的特徵去掉了,這些特徵是一般程序員很少使用的。例如,Java不支持go to語句,代之以提供break和continue語句以及異常處理。
Java還剔除了C++的操作符過載(overload)和多繼承特徵,並且不使用主文件,免去了預處理程序。因為Java沒有結構,數組和串都是對象,所以不需要指針。
Java能夠自動處理對象的引用和間接引用,實現自動的無用單元收集,使用戶不必為存儲管理問題煩惱,能更多的時間和精力花在研發上。
Ⅱ java int為什麼佔4個位元組,是怎麼算的呢
int是最基本的類型,一般和CPU的字寬一致
為了和CPU的字寬一致,提高處理速度。。。
int佔多少個位元組是由編譯器決定的,ansi標準定義int是佔2個位元組.
tc是按ansi標準的,它的int是佔2個位元組的.
你可以在tc里試.printf("%d",sizeof(int));結果是2;
但是在vc里,一個int是佔4個位元組的,在vc裡面,
printf("%d",sizeof(int));
cout<<sizeof(int);結果都是4.
不同的編譯器,規定也不一樣.
float,double也是一樣的,在不同的編譯器里,占的位元組是不一樣的.
Ⅲ java中的變數各佔得位元組數
boolen:1個位元組
int:4個位元組
float:4個位元組
double:8個位元組
char:2個位元組
byte:1個位元組
short:2個位元組
long:8個位元組
(3)int幾個位元組java擴展閱讀
Java8大基本數據類型
1,四種整數類型(byte、short、int、long):
byte:8 位,用於表示最小數據單位,如文件中數據,-128~127
short:16 位,很少用,-32768 ~ 32767
int:32 位、最常用,-2^31-1~2^31 (21 億)
2,兩種浮點數類型(float、double):
float:32 位,後綴 F 或 f,1 位符號位,8 位指數,23 位有效尾數。
double:64 位,最常用,後綴 D 或 d,1 位符號位,11 位指數,52 位有效尾。
3,一種字元類型(char):
char:16 位,是整數類型,用單引號括起來的 1 個字元(可以是一個中文字元),使用 Unicode 碼代表字元,0~2^16-1(65535)。
4,一種布爾類型(boolean):true真和false假
參考鏈接:網路JAVA
Ⅳ java int多少位
int是4個位元組的,一個位元組8位
Ⅳ 在java中,int類型佔四個位元組,而byte類型佔一個位元組
不是的,你這是理解錯誤,也是被混洧了,是初學者最容易犯的錯!
int 四位元組沒錯 byte一位元組也沒錯
但一個位元組有8位哦!
先看byte,byte佔一位元組,一位元組等於八位
我們來看看一個位能表示多少東西: 最小0 最大1 表示 2的1次方
再看看兩個位能表示多少東西: 最小00 最大11 共2的2次方, 能表達四個數
再看看三個位能表示多少東西: 最小000 最大111 共2的3次方,能表達8個數
那八個位能表示多少?
最小:00000000 最大:11111111 這就是8位 也叫一個位元組
如果用數沒有正負之分那可以表示 0~255 共256個數字. 也可以叫做 2的8次方,你用計算器算算,2的8次方是不是等於256?
如果數有正負之分那可以表示-128~+127 也是256個數,因為8位裡面拿走一個位用來表示正負了,所以只能表示最大127
接下來 : 9位 = 2的九次方 =512個數字
接下來: 10位 = 2的十次方 =1024 個 ..... 以此類推
現在知道答案了吧:
1 byte = 1位元組 = 8bit 可表達 2的八次方個數字
1 short= 2位元組 = 16bit 可表達2的十六次方個數字
1 int = 4位元組 = 32bit 可表達2的32次方
Ⅵ java 中int 的范圍
int的取值范圍為: -2^31——2^31-1,即-2147483648——2147483647
1、對於正數來說,它的補碼就是它本身。
2、對於負數來說,它的補碼是它對應的正數的二進數所有位取反之後加一。
3、由負數的補碼求原碼也是相同的操作(所有位取反+1)即為該負數的絕對值
int是4個位元組,32位,
10000000 00000000 00000000 00000000 是補碼,第一位為符號位,1表示負數,所以
對剩下的位取反,結果為 1111111 11111111 11111111 11111111,加一後為10000000 00000000 00000000 00000000
4、所以原碼指的是-2^31=-2147483648
int的取值范圍為-2^31——2^31-1
(6)int幾個位元組java擴展閱讀
int是一個向CPU發送中斷的指令。
格式為INT vec。
vec為中斷向量號,其值為0~255。CPU根據這個向量號去調用內核對應的中斷常式。指令操作為:
(SP)←(SP)-2,((SP)+1:(SP))←(FR)
(IF)←0,(TF)←0
(SP)←(SP)-2,((SP)+1:(SP))←(CS)
(SP)←(SP)-2,((SP)+1:(SP))←(IP)
(CS)←(vec*4+2),(IP)←(vec*4)
參考資料
網路-int
Ⅶ JAVA程序中int型佔多少個位元組
int 是4位元組,String應該比相同的char數組更大一點。
java的字元使用unicode編碼,
不同字元長度不一樣。中文一般佔3個位元組,而字母只佔用1個位元組。
Ⅷ java中的int佔用幾個位元組
這是8中基本類型的內存中佔用位元組數(取值范圍是2的(位元組數X8-1)次方)
1.整型
類型 存儲需求 bit數 取值范圍
byte 1位元組 1*8 (-2的31次方到2的31次方-1)
short 2位元組 2*8 -32768~32767
int 4位元組 4*8 (-2的63次方到2的63次方-1)
long 8位元組 8*8 -128~127
2.浮點型
類型 存儲需求 bit數 備注
float 4位元組 4*8 float類型的數值有一個後綴F(例如:3.14F)
double 8位元組 8*8 沒有後綴F的浮點數值(如3.14)默認為double類型
3.char類型
類型 存儲需求 bit數
char 2位元組 2*8
4.boolean類型
類型 存儲需求 bit數 取值范圍
boolean 1位元組 1*8 false、true
Ⅸ 大家誰知道在java中int類型佔多少個位元組
4個位元組啊!因為java實現了多平台的運行,所以採用了32位字元為一個int類型;java中int是32位 , 數值范圍長度是2的32次方。java中沒有unsign數值的概念,因此正數和負數各佔一半
--> 負數:[-2的31次方, 0) 正數:[0, 2的31次方-1] 將0作為正數處理