導航:首頁 > 源碼編譯 > 浮點型數據編譯

浮點型數據編譯

發布時間:2023-09-10 13:38:54

㈠ VC++編譯時提示 從「double」到「float」截斷 那「截斷」是什麼意思

在當前的計算機中,double類型存儲佔8位元組,float類型存儲佔4位元組,當兩個不同類型的數據進行賦值時,系統進行隱式類型轉換,高精度向低精度的賦值時,低精度變數無法完整存儲高精度數據,系統會自動「截斷」部分內容,完成數據轉存,這樣就有可能會造成數據精度丟失。
在C/C++語言中,浮點型常數的默認類型是double類型,如0.5 ,123.45等
若想得到float類型常數,則要在常數後加f 字元,如:0.5f , 123.45f等

當把double類型數據賦值給float類型變數時,系統編譯時會報以下警告:
warning C4244: '=' : conversion from 'double' to 'float', possible loss of data (從double轉成float,可能會造成數據丟失)
因此,數據間賦值一定要採用正確的類型,建議在使用浮點數時,只使用double類型。

㈡ C語言編程序時怎麼控制浮點型輸出的小數點精確到幾位

使用輸出格式說明符來指定精確到小數點位數。

如:

void main()

{

float a=345.234678;

printf("%.3f ", a) ;

}

其中%.3f里的3就表示輸出精確到小數點後3位。

所以可參考的形式是printf("%m.nf",p);

%m.nf,指定輸出的數據共佔m列,其中有n位是小數。如果數值長度小於m,則左端補空格,若數值長度大於m,則按實際位數輸出。

(2)浮點型數據編譯擴展閱讀:

實型變數分為兩類:單精度型和雙精度型,

其類型說明符為float 單精度說明符,double 雙精度說明符。在Turbo C中單精度型佔4個位元組(32位)內存空間,其數值范圍為3.4E-38~3.4E+38,只能提供七位有效數字。雙精度型佔8 個位元組(64位)內存空間,其數值范圍為1.7E-308~1.7E+308,可提供16位有效數字。

實型變數說明的格式和書寫規則與整型相同。

例如: float x,y; (x,y為單精度實型量)

double a,b,c; (a,b,c為雙精度實型量)

實型常數不分單、雙精度,都按雙精度double型處理。

閱讀全文

與浮點型數據編譯相關的資料

熱點內容
設置Android程序圖標 瀏覽:365
app哪個局 瀏覽:904
源碼編輯器中怎麼保存 瀏覽:463
python背景圖片代碼 瀏覽:448
3D卡片下載哪個App 瀏覽:532
如何用伺服器登錄微信 瀏覽:841
html5移動開發pdf下載 瀏覽:525
如何查看png圖片是否加密 瀏覽:821
php遞歸例子 瀏覽:190
伺服器參數配置未響應是什麼意思 瀏覽:602
pythonchardet模塊 瀏覽:751
添加gm命令 瀏覽:662
rsa加密碼亂碼 瀏覽:756
網站伺服器需要租什麼 瀏覽:997
c語言常用排序演算法 瀏覽:822
pythonhtml文件上傳 瀏覽:523
dosat命令執行exe 瀏覽:94
1024程序員牛頭人 瀏覽:552
程序員能學到技術嗎 瀏覽:419
pe軟體解壓後不能安裝 瀏覽:362