• cout


    你真的会用cout吗?

    #include<iostream>
    #include<iomanip>
    using namespace std;
    int main(){
        //对于直接在operator<<后添加的标记,cout会永远执行(仅限文中使用的标记),直到与它冲突的标记被调用(如boolalpha&noboolalpha.oct&dec&hex,uppercase&nouppercase)
        //对于直接在operator<<后添加的标记,也可使用cout<<setiosflags()或cout.setf()
        cout<<boolalpha<<true<<" "<<false<<" "<<1<<" ";//boolalpha标记表示用"true"&"false"输出布尔型值
        cout<<(bool)-1<<endl;
        cout<<noboolalpha<<true<<" "<<false<<endl;//noboolalpha标记表示用1&0输出布尔型值(用于开启boolalpha标记后)
        cout<<showpos<<114514<<" "<<-1919810<<" "<<114514.1919810<<" "<<true<<" "<<false<<" "<<0<<endl;//showpos标记表示在输出正数时加上'+'号(其中浮点数会保留整数,true会输出"+1",false和0会输出"+0")
        cout<<noshowpos<<114514<<" "<<-1919810<<" "<<114514.1919810<<" "<<true<<" "<<false<<" "<<0<<endl;//noshowpos标记表示在输出正数时不加'+'号(其中浮点数同样会保留整数)
        cout<<oct<<2147483647<<" "<<114514<<" "<<-1919810<<endl;//oct标记表示用8进制输出整数
        cout<<dec<<2147483647<<" "<<114514<<" "<<-1919810<<endl;//dec标记表示用10进制输出整数
        cout<<hex<<2147483647<<" "<<114514<<" "<<-1919810<<endl;//hex标记表示用16进制输出整数(其中字母a~f,x默认为小写)
        cout<<uppercase<<2147483647<<" "<<114514<<" "<<-1919810<<endl;//uppercase标记表示对于hex格式下的输出中字母(a~f,x)大写输出
        cout<<showbase;//showbase标记表示输出时显示整数的基数,其中oct标记开启时会在输出时将位数补成4的倍数,hex标记开启时会在输出前加上"0x"(uppercase标记开启时为"0X")
        cout<<oct<<2147483647<<" "<<114514<<" "<<-1919810<<endl;
        cout<<dec<<2147483647<<" "<<114514<<" "<<-1919810<<endl;
        cout<<hex<<2147483647<<" "<<114514<<" "<<-1919810<<endl;
        cout<<noshowbase;//noshowbase标记表示输出时不显示整数的基数(用于开启showbase标记之后)
        cout<<showpoint;
        cout<<dec<<114514<<" "<<114154.0<<" "<<114514.1919810<<endl;
        cout<<nouppercase;//nouppercase标记用于取消大写(用于开启uppercase标记后)
        cout.fill('*');//fill()函数在指定输出宽度的情况下对空位补充对应字符(默认为' 'space)
        cout.width(10);//width()函数设定输出宽度,仅针对下一次输出
        cout<<dec;
        cout.setf(ios::left);//setf(a)表示对以下所有的cout输出追加格式a
        cout<<114514<<endl;
        cout.width(10);
        cout.setf(ios::right,ios::left);//setf(a,b)表示对以下的所有cout输出追加格式a,同时不追加格式b
        cout<<114514<<endl;
        cout.width(10);
        cout<<1919810<<endl;
        cout.setf(ios::left,ios::right);
        cout.width(10);
        cout<<1145141919810<<endl;//当原本的输出宽度大于设定宽度时不会截位
        cout.setf(ios::right,ios::left);
        cout.width(10);
        cout<<1145141919810<<endl;
        cout.precision(5);//precision(k)函数表示对于浮点数(float&double),以下所有cout输出时保留k位有效数字
        cout<<114.514<<endl;
        cout<<1919.810<<endl;
        cout.precision(3);
        cout<<114.514<<endl;//使用了precision()函数时,会对输出进行四舍五入
        cout<<1919.810<<endl;//对于整数部分长度大于设定长度k时,会转换成科学计数法
        cout<<uppercase;//uppercase标记也可以使科学计数法输出时的'e'变成'E'
        cout<<114514.1919810<<endl;
    }
    
  • 相关阅读:
    内核模式之事件
    用户模式之临界区
    _stdcall与_cdecl区别
    列出系统所有进程
    一道多线程的题
    进程间通信三:父进程传参数与子进程返回值
    进程间通信二:管道技术之命名管道
    进程间通信二:管道技术之匿名管道
    进程间通信二:管道技术之输入输出重定向
    补充实验1:dhcp服务器分配网关-路由器的静态路由优先级
  • 原文地址:https://www.cnblogs.com/Ender-hz/p/14753291.html
Copyright © 2020-2023  润新知