1. C++输入输出基础概念
在C++编程中,输入输出(I/O)是与用户交互的基础功能。与C语言使用printf和scanf不同,C++通过更安全、更灵活的流(stream)机制来处理I/O操作。理解这套机制对于编写健壮的C++程序至关重要。
1.1 流的概念与iostream库
C++中的流是一个抽象概念,表示数据在源与目标之间的流动。iostream库提供了标准输入输出流对象:
cin:标准输入流,通常对应键盘输入cout:标准输出流,通常对应屏幕输出cerr:标准错误流,用于输出错误信息clog:标准日志流,用于输出日志信息
这些对象都定义在std命名空间中,因此使用时需要:
cpp复制#include <iostream>
using namespace std; // 或者使用std::前缀
1.2 基本输出操作
使用cout进行输出的基本语法:
cpp复制cout << "Hello, World!" << endl;
这里的<<是插入运算符,将右侧的数据插入到输出流中。可以连续使用多个<<进行复合输出。
关于换行的几种方式:
cpp复制cout << "Line 1\n"; // 使用转义字符\n
cout << "Line 2" << endl; // 使用endl操纵符
cout << "Line 3" << '\n'; // 使用字符常量
注意:endl不仅插入换行符,还会刷新输出缓冲区。在需要立即显示输出时使用endl,否则使用\n效率更高。
2. 格式化输出控制
2.1 使用iomanip库进行格式化
iomanip库提供了多种操纵符来控制输出格式:
cpp复制#include <iomanip>
int num = 255;
cout << hex << num << endl; // 十六进制输出: ff
cout << dec << num << endl; // 十进制输出: 255
cout << oct << num << endl; // 八进制输出: 377
cout << setw(10) << num << endl; // 设置
