首頁  >  文章  >  後端開發  >  double的輸入格式符號是什麼

double的輸入格式符號是什麼

醉折花枝作酒筹
醉折花枝作酒筹原創
2021-05-17 14:38:1523405瀏覽

使用scanf語句時,double的輸入格式符號是“%lf”,不能使用“%f”;使用printf語句時,可以使用“%f”,printf中沒有定義%lf,但是很多系統會接受。因此建議使用double類型時,用「%lf」輸入避免出錯。

double的輸入格式符號是什麼

本教學操作環境:windows7系統、C 17版、Dell G3電腦。

(1)printf的%f說明符既可以輸出float型又可以輸出double型。

根據「預設參數提升」規則(在printf這樣的函數的可變參數清單中,無論作用域內有沒有原型,都適用此規則)float型會被提升為double型。因此printf()只會看到雙精度數。

(2)scanf對於float型別必須用%f,double必須用%lf,對於scanf,情況就完全不同了,它接受指針,這裡沒有類似的型別提升。

(透過指標)儲存到float和向double儲存大不一樣,因此,scanf區別%f和%lf。

(3)事實上,printf中沒有定義%lf,但是很多系統可能會接受它。要確保可移植性,就要堅持使用%f。

建議大家使用double類型時,用%lf輸入,%f輸出避免出錯。

推薦教學:《C#》

以上是double的輸入格式符號是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn