[問題] 為什麼要寫0.7f ?

看板C_and_CPP (C/C++)作者 (兔子)時間15年前 (2010/11/12 00:36), 編輯推噓2(209)
留言11則, 4人參與, 最新討論串1/1
嗯... 如果我寫7L 那是把7用long的方式去儲存 我原以為寫7f 就是把7用float的方式去存 沒想到出錯了 再寫0.7f就對了 但是0.7電腦本身就會用浮點數的方式去存了吧 寫成0.7f 不是有點多此一舉嗎? ========================================= 想估狗 但是不知道關鍵字XD -- ◤ __ \__◢◤◢◤ ψhirabbitt ◤ ◢███◣ ◢███◣ 妳是我 █████ █████ 你是我 ██ ███ 最愛的寶貝 ██╱╲ ◥█████◣● 最寶貝的愛╱╱ ◥████ ˇ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.13.127.91

11/12 00:37, , 1F
0.7 預設是存 double 吧
11/12 00:37, 1F

11/12 00:44, , 2F
咦是這樣喔
11/12 00:44, 2F

11/12 00:44, , 3F
那float f = 0.7f 就真的沒有必要了吧0.0?
11/12 00:44, 3F

11/12 00:51, , 4F
float f = 0.7; 會不會發生double轉float?
11/12 00:51, 4F

11/12 00:54, , 5F
而且為什麼不讓寫7f? INT 轉 FLOAT 也是很正常的啊
11/12 00:54, 5F

11/12 00:58, , 6F
7f至少要寫成7.f或7.0f
11/12 00:58, 6F

11/12 01:04, , 7F
因為L這個suffix有兩個意思,給整數用就是long literal
11/12 01:04, 7F

11/12 01:05, , 8F
給浮點數用就是 float literal,所以為了區分,浮點數的
11/12 01:05, 8F

11/12 01:05, , 9F
literal必須有小數點出現
11/12 01:05, 9F

11/12 01:16, , 10F
我發覺本來看MSDN誤解他的英文說明了,是long double才對
11/12 01:16, 10F

11/12 01:16, , 11F
文章代碼(AID): #1Ct1k4y1 (C_and_CPP)
文章代碼(AID): #1Ct1k4y1 (C_and_CPP)