1.輸出進製
cout.setf(std::ios_base::dec);//設為十進位制cout << 16 << endl;//列印十進位制16
cout.setf(std::ios_base::hex);//設為十六進製制
cout << 16 << endl;//列印10,沒有0x字首
cout.setf(std::ios_base::oct);//設為八進位制
cout << 16 << endl;//列印20,沒有0字首
cout.unsetf(std::ios_base::oct);//使指定標誌位關閉
cout << 16 << endl;//列印十進位制16
cout << std::hex << 16 << endl//std::hex內部呼叫setf
<< std::oct << 16 << endl
<< std::dec << 16 << endl;
cout << std::showbase //std::showbase內部呼叫setf(ios_base::showbase)
<< std::hex << 16 << endl//列印0x10
<< std::oct << 16 << endl//列印020
<< std::dec << 16 << endl;//列印16
cout << std::hex << std::uppercase//浮點和十六進製制整數的輸出中使用大寫
<< 169 << endl//0xa9
<< 179 << endl//0xb3
<< 189 << endl//0xbd
<< std::scientific
<< 123.456 << endl
<< 567.123 << endl;
2.科學記數法
cout.setf(std::ios_base::scientific, std::ios_base::floatfield);//設定flagcout << 2345.678 << endl;
cout.unsetf(std::ios_base::scientific);//取消flag
cout << 2345.678 << endl;
cout << std::scientific //std::scientific內部呼叫setf
<< 2345.678 << endl;
cout.setf(std::ios_base::fixed, std::ios_base::floatfield);//設定flag
cout << 2345.678 << endl;
cout << std::fixed << 2345.678 << endl;//std::fixed內部呼叫setf
3.設定精度
cout.precision(6);//設定精度為3cout << 2345.678 << endl;
4.設定對齊
cout.width(10);cout.fill('$');//設定填充字元,預設為空格
cout << std::right << "hello" << endl;//列印$$$$$hello
cout.width(10);//再呼叫一次
cout << std::left << "hello" << endl;//hello$$$$$
5.cin的用法
char name[100] = {};int age = 0;
//符合預期的情況
cin >> name >> age;//假設輸入一行,內容為:jack 19
cout << name << " " << age << endl;//輸出為:jack 19
//不符合預期的情況,空白,回車,tab都會截斷
cin >> name >> age;//假設輸入一行,內容為:jack joe 19
cout << name << " " << age;//輸出為:jack 0
//清掉cin緩衝區裡的資料
long long count = cin.rdbuf()->in_**ail();
cin.ignore(count);
//讀取一行,包括空格和tab
cin.getline(name, sizeof(name));
cout << name;
cout格式化輸出
在使用setf等庫函式時使用 在使用流操縱運算元時使用 using namespace std 以下所有的setf 都有對應的unsetf 用於取消設定 所有的setiosflags 可以用resetiosflags 取消 標誌位fmtflags的命名空間可以使用ios base 或者ios int...
cout格式化輸出
需要引入的標頭檔案 include在使用流操縱運算元時使用 int laneri 12345 double lanerd 56789 1 設定整數進製輸出 過載1 fmtflags ios base setf fmtflags mask 過載2 fmtflags ios base setf fmtf...
cout格式化輸出
在c語言中,我們一般用printf 函式來進行輸出,通過輸出字串中的格式說明符 如 4.2d 可以很容易地格式化輸出。而在c 中,為簡便起見,往往不指定輸出的格式,由系統根據資料的型別採取預設的格式,但有時也需要資料按我們指定的格式輸出,比如以十六進製制的形式輸出乙個整數等。有兩種方法可以達到格式化...