A. 單精度數,雙精度數,整數,長整數的區別
1、數據長度不同:
單精度浮點數用4位元組存儲。雙精度浮點數用8位元組存儲,一般用於計算機變成中定義變數,佔用8個位元組存儲空間。整型在內存中可能佔2或4個位元組(通常分別在16位機和32位機上),其取值為基本整常數。長整型,長度至少32位,而64位類Unix系統為64位。
2、類型說明符不同:
整型類型說明符為int。長整型類型說明符為long int或long,64位整型(非ANSI標准)類型說明符為__int64、long long int或long long。雙精度浮點數(double)類型是在IEEE二進制浮點數算術標准(ANSI/IEEE Std 754-1985)中定義的,雙精度浮點數(Double)。Single單精度浮點型。
3、數值范圍不同:
long int表示:-2147483648~2147483647,unsigned long可以表示0~4294967295。基本整型的十進制無符號整常數的范圍為0~65535,有符號數為-32768~+32767。雙精度其數值范圍為-1.7E-308~1.7E+308,單精度浮點數可以表示的范圍為±3.40282 * 10^38。
B. 單精度、雙精度各有幾位小數
單精度有6位小數,雙精度有15位小數。
單精度數(float型)在32位計算機中存儲佔用4位元組,也就是32位,有效位數為7位,小數點後6位。
雙精度數(double型)在32位計算機中存儲佔用8位元組,也就是64位,有效位數為16位,小數點後15位。
(2)單精度數據多少位元組擴展閱讀:
單精度浮點數格式是一種計算機數據格式,在計算機存儲器中佔用4個位元(32 bits),利用「浮點」(浮動小數點)的方法,可以表示一個范圍很大的數值。
C、C++中使用到的雙精度浮點數(double)類型是在IEEE二進制浮點數算術標准(ANSI/IEEE Std 754-1985)中定義的。雙精度浮點數(Double)用來表示帶有小數部分的實數,一般用於計算機變成中定義變數,佔用8個位元組存儲空間。
C. 單精度和雙精度是什麼意思是小數點後多少位嗎
是C語言中的數據儲存類型,是類型的名字。計算機中的數據是二進制,當數字有效數字位數過多的時候儲存范圍之外的輸就會被四捨五入,表現出來的就是單精度有七位有效數字,雙精度有十五位有效數字。
D. 單精度和雙精度小數點後幾位
單精度有6位小數,雙精度有15位小數。
單精度數(float型)在32位計算機中存儲佔用4位元組,也就是32位,有效位數為7位,小數點後6位。
雙精度數(double型)在32位計算機中存儲佔用8位元組,也就是64位,有效位數為16位,小數點後15位。
單精度浮點數的實際有效精度為24位二進制,這相當於 24*log102≈7.2 位10進制的精度,所以平時我們說「單精度浮點數具有7位精度」。
誤差
浮點數以有限的32bit長度來反映無限的實數集合,因此大多數情況下都是一個近似值。同時,對於浮點數的運算還同時伴有誤差擴散現象。
特定精度下看似相等的兩個浮點數可能並不相等,因為它們的最小有效位數不同。
由於浮點數可能無法精確近似於十進制數,如果使用十進制數,則使用浮點數的數學或比較運算可能不會產生相同的結果。
如果涉及浮點數,值可能不往返。值的往返是指,某個運算將原始浮點數轉換為另一種格式,而反向運算又將轉換後的格式轉換回浮點數,且最終浮點數與原始浮點數相等。由於一個或多個最低有效位可能在轉換中丟失或更改,往返可能會失敗。
E. 整型,長整型,無符號整型,單精度,雙精度,字元型,各佔多少位元組
整型和無符號整型:2位元組。
長整型:4位元組。
單精度浮點數:4位元組。
雙精度浮點數:8位元組。
字元型:1位元組。
F. 單精度和雙精度有什麼不同
單精度浮點數和雙精度浮點數有以下區別:
1、所佔的內存不同
單精度浮點數佔用4個位元組(32位)存儲空間來存儲一個浮點數,包括符號位1位,階碼8位,尾數23位。
而雙精度浮點數使用 8個位元組(64位)存儲空間來存儲一個浮點數,包括符號位1位,階碼11位,尾數52位。
2、所存的數值范圍不同
單精度浮點數的數值范圍為-3.4E38~3.4E38,而雙精度浮點數可以表示的數字的絕對值范圍大約是:-2.23E308~ 1.79E308。E表示10的多少次方,如3.4E38指的是3.4乘以10的38次方。
3、十進制下的位數不同
單精度浮點數最多有7位十進制有效數字,如果某個數的有效數字位數超過7位,當把它定義為單精度變數時,超出的部分會自動四捨五入。
雙精度浮點數可以表示十進制的15或16位有效數字,超出的部分也會自動四捨五入。
參考資料來源:網路-單精度浮點數
參考資料來源:網路-雙精度浮點數
G. 單精度和雙精度有什麼區別啊
1、單精度和雙精度的位元組數不同:前者佔4個位元組;後者佔8個位元組。
2、單精度和雙精度有效數字位數不同:前者為8位;後者為16位。
3、單精度和雙精度表示的數的范圍不同:前者的數值范圍在-3.40E+38 到 +3.40E+38之間;後者的范圍為-1.79E+308到+1.79E+308之間。
4、單精度和雙精度處理的速度不同:前者的速度更加的快。
H. 在C語言中各種數據類型各佔多少位
(一)32位平台:
分為有符號型與無符號型。
有符號型:
short 在內存中占兩個位元組,范圍為-2^15~(2^15-1)
int 在內存中佔四個位元組,范圍為-2^31~(2^31-1)
long在內存中佔四個位元組,范圍為-2^31~2^31-1
無符號型:最高位不表示符號位
unsigned short 在內存中占兩個位元組,范圍為0~2^16-1
unsigned int 在內存中佔四個位元組,范圍為0~2^32-1
unsigned long在內存中佔四個位元組,范圍為0~2^32-1
實型變數:
分單精度 float 和雙精度 double 兩種形式:
float:佔四個位元組,提供7~8位有效數字。
double: 佔八個位元組,提供15~16位有效數字。
(二)16位平台:
1)整型(基本型):類型說明符為int,在內存中佔2個位元組。
2)短整型:類型說明符為short int或short。所佔位元組和取值范圍均與整型(基本型)相同。
3)長整型:類型說明符為long int或long,在內存中佔4個位元組。
無符號型:類型說明符為unsigned。
無符號型又可與上述三種類型匹配而構成:
各種無符號類型量所佔的內存空間位元組數與相應的有符號類型量相同。但由於省去了符號位,故不能表示負數。
實型變數:
分為單精度(float型)、雙精度(double型)和長雙精度(long double型)三類。
單精度型佔4個位元組(32位)內存空間,其數值范圍為3.4E-38~3.4E+38,只能提供七位有效數字。
雙精度型佔8 個位元組(64位)內存空間,其數值范圍為1.7E-308~1.7E+308,可提供16位有效數字。
長雙精度型16 個位元組(128位)內存空間,可提供18-19位有效數字。