c中的double是什麼,有什麼作用,煩舉一例

2021-03-07 06:28:02 字數 2979 閱讀 6628

1樓:匿名使用者

double(雙精度浮點型)是計算機使用的一種資料型別。比起單精度浮點數(float),double(雙精度浮點數)使用 64 位(8位元組) 來儲存乙個浮點數。

它可以表示十進位制的15或16位有效數字,負值取值範圍為 -1.7976e+308 到 -4.94065645841246544e-324,正值取值範圍為 4.

94065645841246544e-324 到 1.797693e+308。

比如:宣告double 型別的變數:

double num;

初始化double 型別的變數:

num = 5.621456873;

2樓:辛靖寶

double是一種資料型別,用來宣告乙個變數的型別。

比方說你寫了乙個字,為了告訴別人它是什麼東西,它是乙個漢字,你可以用「 漢字 字;」這種格式來告訴別人那個字是個漢字。

同樣道理,c++中你想建立乙個變數的時候,需要告訴編譯器變數的資料型別,以便編譯器給變數分配儲存空間。

格式:int i; 這是整型變數的宣告格式。

如果要宣告雙精度型變數,也就是小數,相同道理double i;

這樣編譯器就知道i是乙個雙精度小數變數。

另外 float也表示小數,是單精度小數。float和double的區別在於,float所允許的小數範圍小,double允許的小數範圍大。

3樓:

就是個資料型別

用來表示小數的

而且是位數比較多 數比較大的 位數少的用float在記憶體中佔8個位元組

例如 double s = 1.2;

你定義成 double s = 1; 也行

4樓:匿名使用者

double 就是雙精度浮點數型別,定義乙個double型別的變數可以這樣

double d;

c++中double什麼意思?

5樓:匿名使用者

double是雙精度浮點類bai型du

sizeof(double)是返回

double型別的zhi位元組長度

(double*)是把daomalloc返回的void*指標轉換為double*型指

內針,然後才能賦值給

容x這個句子就是分配乙個長度為n+1的double型陣列,並把陣列頭位址賦給x

6樓:匿名使用者

double 是雙精度浮點數,它占用8個位元組記憶體。

7樓:匿名使用者

使得指標指向乙個double型別的動態儲存單元。

c++中double什麼意思?

8樓:粟福崇卉

double是雙精度

bai浮點型別

sizeof(double)是返回double型別的字du節zhi長度

(double*)是把malloc返回的void*指標轉換為daodouble*型指標,然後才

回能賦值給x

這個句子答就是分配乙個長度為n+1的double型陣列,並把陣列頭位址賦給x

c++中double和long double有什麼區別?

9樓:匿名使用者

二者均為浮點數型別,區別如下:

1 double型別為c++原始型別,所有編譯器均支援,而long double是c99規範增加的新型別,只有支援c99的編譯器才支援long double;

2 占用大小不同,double佔8個位元組,long double根據編譯器實現不同,有占用8,10,12位元組和16位元組四種;

在long double用8位元組實現時,long double 和double沒有其它區別。對於其它實現方式,還有以下三項區別:

1 運算速度不同,long double占用位元組多,運算速度會慢一些;

2 精度不同,long double可以表示更大的精度;

3 表示範圍不同,long double可以表示更大範圍的浮點數。

10樓:起個名子真挺難

double 8 個位元組

long double 8 個位元組

long double 和 double 的表示方式相同。 但是, long double 和 double 是不同的型別。

double d(0);

long double ld(0);

size_t t1 = sizeof(d);

size_t t2 = sizeof(ld);

11樓:o丨_丨_丨

標準只保證long double 的精度不低於double(也就是說可以一樣),具體是怎樣得取決於你的編譯器

12樓:匿名使用者

引用的意思呢就是說返回變數的位址而非變數本身。比如一樓的返回值就是乙個double型別的引用,這樣子函式結束之後儲存返回值的記憶體單元不會被銷毀,保留了它的位址。

例如下面這個例子:

int a=1,b;

b=a;

b++;

這個例子裡執行完之後a為1,而b為2。

但這個例子:

int a=1;

int *b;

b=&a;//指標b獲取了a的位址

(*b)++;

a和b的值都會變為2

13樓:胖子洲

一般來說是佔的位元組數不同,但對於現在的編譯器,比如vc,他們佔位元組數一樣,都是16

14樓:鷹弈

區別大了

從數學上說,double是實數(有範圍限

制),long是整數(有範圍限制)

實數包含整數

從系統分配位元組來說,double變數佔8個位元組,long佔4個位元組從計算機的儲存形式來說,區別就更大了,當然,樓主初學,不必了解那麼詳細 ,只要記住前兩點就行

matlab中double是什麼意思

matlab中double是強制型別轉換語句,將其它形式的陣列轉換為double型別。例如 syms x equ 1 x 4 y solve equ 此時解出的y是乙個syms型別變數3 用double y 可以將y轉變為double型別變數3,從而可以帶入下一步繼續進行計算。雙精度,可以使用強制轉...

C 中關於float和double的小問題

寫常數時 19 3 5 這樣寫就是int 4.0 3.14 這樣寫就是double 4.0f 3.14f 這樣寫就是float 運算時,低精度的會自動向高精度轉換,比如有double時,int和float都會轉換成double,你那個表示式中sqrt 返回乙個double,所以其他int都轉成了do...

mysql中double62是什麼意思

總共佔6位數字,小數點後佔兩位,小數點前佔4位。double是mysql浮點型別資料的一種,double 6,2 表示規定顯示的值不會超過6位數字,小數點後面帶有2位數字。double m,d 數值範回圍 1.7976931348623157e 308 to 2.2250738585072014e ...