使用cout进行输出

本文详细介绍了C++中使用cout进行输出的基本原理和方法,包括如何输出数值类型、字符串、指针,以及如何进行格式化输出,如调整字段宽度、设置精度、控制小数点和末尾0的显示等。还提到了控制符的使用和setf()函数在格式化中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C++将输出看做字节流,则需要将数值类型转换为文本类型


重载的<<运算符

  1. 输出和指针

    对于字符数组,字符串指针,字符串常量,<<符号将直接输出所指向的字符串
    如果需要输出字符串地址,强制转化为(void*)

  2. 拼接技术

    不多说了

  3. 其他ostream方法

    cout.put(char ) 输出单个字符,返回ostream
    cout.write(char * , int ) 输出字符串ostream,注:遇到'\0'不会停止打印

  4. 刷新缓冲区

    cout<<flush; flush(cout);
    cout<<endl;

  5. cout格式化输出

    • 默认的格式化方式
    • ​通过使用“控制符“改变输出格式(本质是函数,但不是成员函数)

    1. 十进制,八进制,十六进制
      十六进制:cout<<hex; 或者 hex(cout);
      八进制:cout<<oct; 或者 oct(cout);
      十进制:cout<<dec; 或者 dec(cout);
    2. 调整字段宽度
      cout.width(int )
      返回以前的字段宽度。只对下一次有影响,然后恢复默认值
    3. 填充字符
      cout.fill(char )
      设置将一直有效,知道更改
    4. 设置浮点数的显示精度
      浮点数的精度含义取决于输出模式默认模式下,精度的含义是:整数位+小数位,
      定点模式科学模式指的是小数点后的位数
      这里我们先讨论默认模式
      cout.precision()设置位数,一直有效,直到改动
    5. 打印末尾的0和小数点
      cout.setf(ios_base::showpiont)可以是默认模式显示省去的0
    6. 再谈setf()
      ios_base类中又一个受保护的数据成员,其中各个标记(各个)分别控制着格式化的各个方面。
      setf()提供了一种调整标记的途径
      setf()有两个原型:

    • fmtflags setf( fmtflags );
    • fmtflags setf( fmtflags , fmtflags );
      原型1设置单个位控制的格式信息,举一些格式常量:
      ios_base::boolalpha 输入和输出bool值,可以为true何false
      ios_base::showbase 对于输出,使用C++基数前缀(0,0X)
      ios_base::showpoint 显示末尾的小数点
      ios_base::uppercase 对于16进制,字母大写
      ios_base::showpos 在正数前加+


      原型2中,第一个参数同原型1参数功能相同,第二个参数用于消除第一个参数中的哪些位
      具体:P-748
    • unsetf()
    • 头文件iomanip
      使用iostream中的一些格式控制不太方便,比如设置宽度。
      iomanip提供了一些控制符,最常用的有三个:
      setprecision()
      setfill()
      setw()
      可以这样用cout<< setprecision(5)<<...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值