c++格式化輸出簡要預習

c++格式化輸出
1.在輸入輸出流中使用控制符
控制符 作用
dec 設置數值的基數爲10
hex 設置數值的基數爲16
Oct 設置數值的基數爲8
setfill(c) 設置填充字符c,c可爲字符常量或字符變量
setprecision(n) 設置浮點數的精度爲n位,在一一般十進制小數形式輸出時,n代表有效數字,在以固定小數位數形式和指數形式輸出時,n爲小數位數
setw(n) 設置字段寬度爲n位
setiosflags(ios::fixed) 設置浮點數以固定的小數位顯示
setiosftags(ios::scientific) 設置浮點數以科學計數法形式輸出
setiosflags(ios::left) 輸出數據左對齊
setiosflags(ios::right) 輸出數據右對齊
setiosflags(ios::skipws) 忽略前導的空格
setiosflags(ios::uppercase) 數據以十六進制輸出時字母大寫表示
setiosflags(ios::lowercase) 數據以十六進制形式輸出時字母以小寫字母表示
setiosflags(ios::showpos) 輸出正數時給出+號
//example 1  
#include<iostream>
#include<iomanip>
using namespace std;

int main() {
    int a = 10;

    cout << dec << a << endl;
    cout << hex << a << endl;
    cout << setiosflags(ios::uppercase) << hex << a << endl;
    cout << oct << a << endl;

    return 0;
}  
//example 2  
#include<string>
#include<iomanip>
#include<iostream>
using namespace std;

int main() {
    string str = "help";
    cout <<setfill('*')<<setw(10)<< setiosflags(ios::left) << str << endl;
    return 0;
}  
~~~C++  
//example 3  

#include<iomanip>
#include<iostream>
using namespace std;

int main() {
    int num = 10;
    cout << setiosflags(ios::showpos)<<num<<endl;
    return 0;
}
//example 4  

#include<iomanip>
#include<iostream>
using namespace std;

int main() {
    double a = 123.4567;
    cout <<setiosflags(ios::fixed)<< setprecision(3) << a << endl;

    return 0;
//example 5  

#include<iomanip>
#include<iostream>
using namespace std;

int main() {
    double a = 123.4567;
    cout <<setiosflags(ios::scientific)<< setprecision(3) << a << endl;

    return 0;
}  
//example 6  

#include<iomanip>
#include<iostream>
#include<bitset>
using namespace std;

int main() {

    double a = 123.4567;
    cout << oct << a << endl;
    cout << setiosflags(ios::oct) << a << endl;
    cout <<setiosflags(ios::hexfloat)<< a << endl;
    cout << setiosflags(ios::hex) << a << endl;
    cout << hex << a << endl;


    return 0;
}  
//example 7  
#include<iostream>
#include<iomanip>
#include<string>
using namespace std;

int main(int argc, int *argv[]) {
    //the head
    cout << setiosflags(ios::left) << setw(15) << "type:" << setw(2) << "bit:" << endl;

    //the int family
    cout <<setiosflags(ios::left)<< setw(15)<<"short"<<setw(2) << sizeof(short) << endl;
    cout <<setiosflags(ios::left) << setw(15)<<"int"<<setw(2) << sizeof(int) << endl;
    cout << setiosflags(ios::left) << setw(15)<<"long"<<setw(2) << sizeof(long) << endl;
    cout << setiosflags(ios::left) << setw(15)<<"long long"<<setw(2) << sizeof(long long) << endl;

    //the short family
    cout << setiosflags(ios::left) << setw(15) << "short" << setw(2) << sizeof(short) << endl;
    cout << setiosflags(ios::left) << setw(15) << "long" << setw(2) << sizeof(long) << endl;  

    //the string
    cout << setiosflags(ios::left) << setw(15) << "string" << setw(2) << sizeof(string) << endl;

    //the char
    cout << setiosflags(ios::left) << setw(15) << "char" << setw(2) << sizeof(char) << endl;
    cout << setiosflags(ios::left) << setw(15) << "signed char" << setw(2) << sizeof(signed char) << endl;
    cout << setiosflags(ios::left) << setw(15) << "unsigned char" << setw(2) << sizeof(unsigned char) << endl;

}  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章