C++保留有效位與保留小數位
如果想要保留n位小數
根據C++官網上的解釋,該函式沒有指定的返回型別,並且該函式用於設定輸出操作上的小數精確位。
然後返回值中解釋:未指定返回值,這個函式僅用於資料流修改操作上。
說了這麼多,我想要表達的意思就是當我們需要將精確後的小數儲存(將a精確後儲存賦值給b)起來的話,使用setprecision函式就不行了。
沒關係,別急,我這裡有解決方法:
如果你在學習C/C++的過程中遇到了問題,可以來加入小編的企鵝圈問小編哦~小編很熱情的(●’◡’●)
1.使用stringstream類
在這裡我們使用第一種方式,可以看到第一種用法解釋是設定流的格式標誌(format flag)為引數 fmtfl 的形式
然而引數fmtflags fmtfl又是什麼呢?繼續跟進去可以看到
這裡就可以看到fixed的意思是將小數設定為定點表示法
然後後面的ss.precision(3)就是保留3位
放在一起的意思就是小數點後保留3位有效位。
至於ss.str(),可以看到官網解釋如下,得到字串流中儲存的內容,注意返回位std::string型別:
2.手動計算,結束floor函式
這個演算法的思想就是先將該數乘以1000,就得到了小數點後三位,然後+0.5是什麼意思呢?
大家想一想哈,a*1000=1123.456789對不對,我們一般保留有效位都是需要四捨五入的,
在a*1000之後+0.5不就自動實現了四捨五入了嗎?然後在使用地板函式進行取整,再除1000不就完美實現了嗎?
總結:第一種方法適用於一次性處理大批資料,比如說如果你想要將很多資料一次寫入txt中。
第二種方法比較適合即算即用,快速簡便。
相關文章
- oracle保留兩位小數Oracle
- JavaScript保留兩位或者其他位數小數JavaScript
- JavaScript浮點數保留兩位小數JavaScript
- java保留2位小數及BigDecimal使用JavaDecimal
- android kotlin 小數保留格式化位數AndroidKotlin
- 影片直播app原始碼,EditText保留小數位數APP原始碼
- MySQL保留幾位小數的4種方法MySql
- Python保留兩位小數五種常用的方法!Python
- 前端保留兩位小數toFixed(2)會有坑前端
- jdk8之stream求和,保留兩位小數JDK
- Android&Java保留小數位數的幾種寫法AndroidJava
- Python如何保留float型別小數點後3位Python型別
- Math類產生隨機數後保留一位小數隨機
- mysql格式化小數保留小數點後兩位(小數點格式化)MySql
- json轉化保留null欄位JSONNull
- PHP 保留小數點後有效數字(四捨五入)PHP
- iOS小數點格式化:最多保留兩位小數,小數點後末尾的0不要iOS
- 手機直播原始碼,flutter 隨機數的生成和保留兩位小數原始碼Flutter隨機
- ToString()格式和用法大全,C#實現保留兩位小數的方法C#
- python 使用 round 方法保留 1 位和 2 位小數時沒有進行四捨五入Python
- POJ 3737 UmBasketella & printf佔位符%lf和%f & cin/cout取消繫結加速 & cin/cout保留小數位數
- input限制只能輸入整數或保留小數點後2位的浮點數
- BigDecimal加減乘除運算,保留2位小數點,初始化,與0的比較Decimal
- Python中怎麼保留小數?Python
- 教你excel如何保留11位手機號碼Excel
- ConvertLatOrLonFilter-經緯度格式轉換-保留6位Filter
- hutool jsonutil BigDecimal 保留小數點處理JSONDecimal
- sqlserver資料庫中如果對數值型的欄位進行小數點保留兩位,如果是小於1的數,前面的0消失解決方案SQLServer資料庫
- js-正負數保留小數點特定位數JS
- 通過計算機語言自定義保留小數計算機
- excel一鍵去除公式保留文字 excel刪除公式保留運算數值Excel公式
- 數位DP小記
- Python中保留整數常用的方法!Python
- C++ 的關鍵字(保留字)完整介紹C++
- UG NX10.0製圖——修改單位小數位數
- 字串-保留字母字串
- 備份保留策略
- excel小數位補零Excel