保留有效位數
setprecision()
包含的標頭檔案——#include
#include#include#include#include "stdlib.h"
using namespace std;
int main(){
//保留有效數字
double pi=3.1415926;
cout<[外鏈轉存失敗(img-pp02e5b8-1564575349508)(./images/1531818747215.png)]
保留有效數字
setprecision(3)
保留小數點後幾位問題
在setprecision() 前新增setiosflags(ios::fixed)
3、格式化輸出(01)
cout.setf(ios::right);
cout.fill('0');
cout.width(2);
在main() 函式return 0之前新增 system(「pause」); (需包含標頭檔案"stdlib.h")
main() 函式return 0之前新增 getchar()
遇空字元(包括空格、回車、tab)表示乙個輸入的結束,連續的空字元會被忽略。
cin1.cin>>
1.以空格,回車,換行分隔
2.如果第乙個為上述「分隔符」,cin會自動忽略並清除,等待資料繼續輸入
3.cin>>noskipws>>input可以不略過空白字元
2.cin.get
a.讀取乙個字元 不忽略分隔符
a=cin.get();cin.get(a);
b.讀取一整行
cin.get(a,size);遇到分隔符是結束
note:
只能將字串讀入c風格的字串中,即char*類,而getline型別可以讀入c++風格字串,即string類
3.cin.getline
a=cin.getline(a,size)遇到分隔符結束
實際只能讀取size-1個資料
與cin.get()唯一區別為,前者不會將分隔符留在緩衝區中
4.cin.clear()
清空輸入資料時的異常狀態,使接下來的資料正常輸入
5.cin.ignore()
cin.ignore(1024,』\n』)第乙個引數通常要求為非常大的整數,實際上只有\n在起作用,就是把回車(包括回車)之前的所以字元從輸入緩衝(流)中清除出去。
note:
如果cin.ignore()不給引數,則預設引數為cin.ignore(1,eof),即把eof前的1個字元清掉,沒有遇到eof就清掉乙個字元然後結束,會導致不正確的結果
6.getline
getline(cin,a)getline遇到結束符時,會將結束符一併讀入指定的string中,再將結束符替換為空字元,所以用getline較為安全
與cin.getline()類似,前者屬於istream流,後者屬於stirng流
string輸入
即用上述的cin和讀入即可getline
為了輸入的快速,防止超時,可以使用scanf讀入資料,後再賦值給string
vs2017問題集錦
當建立了win32 console project後,f5執行後,本來想看到console中printf出來的資訊,可是cmd視窗一閃而過。下面是保持visual studio 跳出的cmd視窗駐留的兩種方法,根據需要選擇不同的方式。方法一 在 中加入 1 system pause 2 getcha...
VS2017遠端除錯
由於某些因素,我需要程式在其他系統執行,但是又不想打日誌,就想直接遠端除錯。找了幾個部落格都有基礎的教程,但都不能正常執行,決定自己寫乙個能用的。首先去vs安裝目錄找到remote debugger目錄 在安裝目錄的common7 ide裡面,下圖目錄是因為我把vs2017安裝在f microsof...
解決VS2017除錯卡住的問題
今天用vs2017除錯程式時,程式沒有按照預期的那樣執行到斷點處,並且結束除錯時會卡很長時間。那麼解決方法是 1.tools options debugging 勾選 use managed compatibility mode 2.tools options debugging symbols 取...