A. c語言中整型,字元型,浮點型,和雙精度浮點型,詳解
整型,計算機中的一個基本的專業術語,指沒有小數部分的數據。整型可以用十進制,十六進制或八進制符號指定,前面可以加上可選的符號(- 或者 +)。包括整型常量和整型變數,整型變數又包括短整型、基本整型、長整型,它們都分為有符號和無符號兩種版本,是一種智能的計算方式。
字元型量包括字元常量和字元變數。字元串常量由一對雙引號括起的字元序列。字元變數的取值是字元常量,即單個字元。字元變數的類型說明符是char。字元變數類型說明的格式和書寫規則都與整型變數相同。
浮點型利用指數使小數點的位置可以根據需要而上下浮動,從而可以靈活地表達更大范圍的實數。
雙精度浮點型,此數據類型與單精度數據類型(float)相似,但精確度比float高,編譯時所佔的內存空間依不同的編譯器而有所不同,是double float數據類型,C/C++中表示實型變數的一種變數類型。
(1)c語言浮點型所佔位元組擴展閱讀
雙精度浮點型類型數值可轉換到其他類型的整數或浮點數,反之亦然。雙精度浮點型常量的最後一個字元可加上「d」或「D」。其存儲格式與浮點型類似,最高位為符號位,次高11位為指數位,其次52位為尾數。
雙精度型就是雙精度浮點型,同數值型比,它能提供更高的數值精度,採用固定存儲長度的浮點數形式,每個雙精度浮點型數據佔8個位元組。與數值型數據不同,它的小數點位置是由輸入的數據值來決定的,並且只能用於表中的欄位。
B. C語言浮點型小數點後為多少位
單精度浮點型小數點後面有效數字為7位和雙精度浮點型小數點後面有效數字為16位。
單精度在一些處理器上比雙精度更快而且只佔用雙精度一半的空間,但是當值很大或很小的時候,它將變得不精確。當需要小數部分並且對精度的要求不高時,單精度浮點型的變數是有用的。
例如,當表示美元和分時,單精度浮點型是有用的。在foxpro中,單精度浮點型是為了提供兼容性,浮點數據類型在功能上等價於數值型。
(2)c語言浮點型所佔位元組擴展閱讀:
浮點數是屬於有理數中某特定子集的數的數字表示,在計算機中用以近似表示任意某個實數。具體的說,這個實數由一個整數或定點數(即尾數)乘以某個基數(計算機中通常是2)的整數次冪得到,這種表示方法類似於基數為10的科學計數法。
浮點數參與的運算,這種運算通常伴隨著因為無法精確表示而進行的近似或舍入。補碼系統的0就只有一個表示方式,這點和反碼系統不同(在反碼系統中,0有二種表示方式),因此在判斷數字是否為0時,只要比較一次即可。
C. c語言中double型數據在內存中 佔多少個位元組來存儲
c語言中double(雙精度浮點型)是計算機使用的一種數據類型。double(雙精度浮點型)使用 64 位(8位元組) 來儲存一個浮點數。 它可以表示十進制的15或16位有效數字,其數值范圍為-1.79769313486232E308 到1.79769313486232E308。
(3)c語言浮點型所佔位元組擴展閱讀:
double(雙精度浮點型)數值可轉換到其他類型的整數或浮點數,反之亦然。double(雙精度浮點型)常量的最後一個字元可加上「d」或「D」。其存儲格式與浮點型類似,最高位為符號位,次高11位為指數位,其次52位為尾數。
double(雙精度浮點型)同數值型比,它能提供更高的數值精度,採用固定存儲長度的浮點數形式,與數值型數據不同,它的小數點位置是由輸入的數據值來決定的,並且只能用於表中的欄位。
D. C語言中float,char,int函數各占幾個位元組,如何證明,%12d,%12f是什麼意思
float,char,int型數據分別佔4,1,4個位元組,不是函數,是數據
用sizeof運算可以證明
printf("%d,%d,%d\n",sizeof(float),sizeof(char),sizeof(int));
%nd,這里的n表示輸出數據占幾位,默認是靠右對齊,不足的用空格補齊,超出的正常顯示。%nf一樣的意思。
E. c語言類型所佔位元組數
類型
常見的有char、int、long、short、float、double及指針等.
字元類型
這里單只char,char變數在內存中存儲的是字元對應的ASCII碼值。所以長度也是固定的,為1個位元組。
整數類型
查了資料發現對各個類型的整數佔用位元組數是有一個規定的,雖然16位32位或者64位的機子各種類型所佔用的長度並不一樣。規則如下:
short 至少佔用2個位元組。
int 建議為一個機器字長。32位環境下機器字長為4位元組,64位環境下機器字長為8位元組。
short 的長度不能大於 int,long 的長度不能小於 int。
所以說,short並不一定短,long並不一定短,有可能都和int一樣長。
浮點數(小數)
C中浮點數有兩種,float和double,不像整數,小數的長度始終是固定的,float佔用4個位元組,double佔用8個位元組。
指針
C中指針即為地址,所以編輯器的定址空間則是指針的地址范圍。所以指針變數在32位機器的定址空間為2^32,要將所有地址都表示出來則需要為4個位元組長度,所以要佔用4個位元組長度。同理64位的編譯器則需要8個位元組長度。
F. 在C語言中,int類型,long類型,float類型,double類型和char類型在16位和32位計算機中各占幾個位元組
int 在內存中佔4個位元組,long在內存中佔4個位元組,float:佔4個位元組,double: 佔8個位元組,char:佔1個位元組,操作方法如下:
1、C#支持8中預定的整數類型。分別是sbyte、short、int、long、byte、ushort、uint、ulong。byte0-255標準的8位整數類型。默認是無符號的,有符號的為sbyte。
G. float占幾個位元組
4 個位元組。
FLOAT 數據類型用於存儲單精度浮點數或雙精度浮點數。浮點數使用IEEE(電氣和電子工程師協會)格式。浮點類型的單精度值具有 4 個位元組,包括一個符號位、一個 8 位 二進制指數和一個 23 位尾數。
由於尾數的高順序位始終為 1,因此它不是以數字形式存儲的。此表示形式為 float 類型提供了一個大約在 -3.4E+38 ~ 3.4E+38 之間的范圍。
float數據類型用於存儲單精度浮點數或雙精度浮點數。浮點數使用IEEE(電氣和電子工程師協會)格式。浮點類型的單精度值包括數符,尾數,指數符,指數四部分。由於尾數的高順序位始終為 1,因此它不是以數字形式存儲的。
float數據在機內用指數型式表示,數符佔1位二進制,表示數的正負。指數符佔1位二進制,表示指數的正負。尾數表示浮點數有效數字,0.xxxxxxx, 但不存開頭的 0 和點。指數佔多少位,尾數佔多少位,由計算機系統決定。
H. 在C語言中float數據數值范圍是多少
C語言中,float 為單精度浮點數,佔4位元組,其數值范圍為3.4E-38 ~3.4E+38或者-(3.4E-38 ~3.4E+38)
float的指數位有8位,尾數位有23位,符號位1位。
於是,float的指數范圍為-127~+128,按補碼的形式來劃分。
其中負指數決定了浮點數所能表達的絕對值最小的非零數;而正指數決定了浮點數所能表達的絕對值最大的數,也即決定了浮點數的取值范圍。
所以,float的范圍為-2^128 ~ +2^128,也即-3.40E+38 ~ +3.40E+38
I. C語言 float
float是C語言的基本數據類型中的一種,表示單精度浮點數。
C語言規定單精度浮點型在內存佔用4個位元組,精度為7位,取值范圍為:3.4*10^-38 ~3.4*10^38或者-(3.4*10^-38 ~3.4*10^38)
可以定義單精度浮點型變數,如float a;即定義了一個電精度浮點型變數a。相關類型:double表示雙精度浮點數。
(9)c語言浮點型所佔位元組擴展閱讀:
構成:
浮點數在機內用指數型式表示,分解為:數符,尾數,指數符,指數四部分。
數符占 1 位二進制,表示數的正負。
指數符占 1 位二進制,表示指數的正負。
尾數表示浮點數有效數字,0.xxxxxxx, 但不存開頭的 0 和點。
指數存指數的有效數字。
指數佔多少位,尾數佔多少位,由計算機系統決定。
區別:
可根據應用程序的需求將變數聲明為 float 或 double。這兩種類型之間的主要差異在於它們可表示的基數、它們需要的存儲以及它們的范圍。
在 C 和 C++ 中,如下賦值語句:
1 floata=0.1;
編譯器報錯:warning C4305: 'initializing' : truncation from 'const double ' to 'float '
原因:在 C/C++ 中,上述語句等號右邊 0.1,認為是個 float,但是編譯器卻把它認為是個 double(因為小數默認是 double),所以要報這個 warning,一般改成0.1f就沒事了。
網路-float
J. C語言中float型數據表示的最大數字到底是多少啊
C語言中float型數據表示的最大數字為3.402823E38。
FLOAT數據類型用於存儲單精度浮點數。具有4個位元組,包括一個符號位、一個8位二進制指數和一個23位尾數。由於尾數的高順序位始終為1,因此它不是以數字形式存儲的。此表示形式為float類型,提供了一個在-3.402823E38到3.402823E38之間的范圍。
(10)c語言浮點型所佔位元組擴展閱讀:
FLOAT數據類型變數可以提升為更大基數的類型(從 float 類型到 double 類型)。當對浮點變數執行算術時,通常會出現提升。此算術始終以與具有最高精度的變數一樣高的精度執行。
如果存儲比精度更重要,優先考慮對浮點變數使用 float 類型。相反,如果精度是最重要的條件,則優先使用 double 類型。