double和float的區別

2021-06-12 12:32:55 字數 610 閱讀 3919

float a=0.1;

編譯器報錯:warning c4305: 'initializing' : truncation from 'const double ' to 'float '

原因:在c/c++中(也不知道是不是就在vc++中這樣),上述語句等號右邊0.1,我們以為它是個float,

但是編譯器卻把它認為是個double,所以要報這個warning。

常人的做法,經常使用double,而不喜歡使用float,因為精度上的問題,我想也有上面這個沒有道理的原因。

2007-10-19 16:06

內容如下:

double distance(int x1,int y1,int x2,int y2)//int function

double distance(double x1,double y1,double x2,double y2)//float function

void main()

float distance(float x1,float y1,float x2,float y2)

void main(){

cout《上面這樣改一下就好了,,因為,5.0 預設是double型別的,,所以要加f ,

float和double的精度區別

float和double的範圍是由指數的位數來決定的。float的指數字有8位,而double的指數字有11位,分布如下 float 1bit 符號位 8bits 指數字 23bits 尾數字 double 1bit 符號位 11bits 指數字 52bits 尾數字 value of floati...

float和double輸入的區別

在printf函式中,輸出float和double型別的資料,使用 f格式輸出。但是,在scanf函式中,讀取輸入float和double型別的資料時,需要注意 1 float型別資料,使用 f 格式輸入 2 double型別資料,使用 lf格式輸入 在 和f之間新增字母 l 程式測試例子如下 程式...

float 與double 的區別

float 與double 都是浮點數,浮點數有兩種表示形式 1 十進位制小數形式。例如 0.123,123.0,等,注意 必須有小數點。2 指數形式。如123e3或123e3都代表123 10 3。注意e或e之前必須有數字,而且e後面的指數必須為整數。乙個浮點數有多種指數表示形式,例如123.45...