C++ 入门:输入输出、缺省参数与函数重载
在 C 语言时代,我们依赖 printf 和 scanf 完成输入输出,手动指定格式符且存在类型不匹配的风险。C++ 引入了全新的 IO 库,以类型安全和可扩展的设计重构了这一体验。
一、C++ 的输入与输出
1.1 核心载体: 头文件
<iostream> 是 Input Output Stream 的缩写,定义了 cin, cout, endl 等标准 IO 对象,并封装了底层缓冲区管理细节。
注意: 在 Visual Studio 编译器中,<iostream> 可能会间接包含 <stdio.h>,允许混用 cin 与 scanf。但这并非跨平台标准行为,建议避免混用以保证代码的可移植性。
1.2 核心 IO 对象:cin 与 cout
1.2.1 std::cin 标准输入流
std::cin 是 istream 类的对象,面向窄字符(char)的标准输入流。它通过流提取运算符 >> 从键盘读取数据。
#include <iostream>
int main() {
int age;
std::cout << "请输入你的年龄:";
std::cin >> age; // 从标准输入读取整数
std::cout << "你的年龄是:" << age << "岁" << std::endl;
return 0;
}
1.2.2 std::cout 标准输出流
std::cout 是 ostream 类的对象,通过流插入运算符 << 向屏幕写入数据,支持链式调用。
#include <iostream>
int main() {
std::cout << "Hello, C++ IO Stream!" << std::endl;
return 0;
}
1.3 流操作符:<< 与 >> 的双重身份
在 C 语言中,<< 和 >> 代表位移运算。C++ 通过重载赋予它们新角色:


