目录
- 输入输出概述
- 使用
<iostream>
库 - 标准输出:
cout
- 标准输入:
cin
- 格式化输出
- 标准错误输出:
cerr
与clog
- 示例代码
- 参考资料
1. 输入输出概述
C++ 通过标准输入输出流来处理数据的输入与输出。主要涉及两个标准流:
- 标准输出流(
cout
):用于向控制台输出数据。 - 标准输入流(
cin
):用于从控制台读取数据。
此外,还有用于输出错误信息的 cerr
和 clog
,分别用于输出错误和日志信息。
2. 使用 <iostream>
库
C++ 的输入输出操作依赖于 <iostream>
头文件。使用此头文件可以访问 cin
、cout
、cerr
和 clog
等对象。
示例:
#include <iostream>
using namespace std;
int main() {
// 示例代码见后文
return 0;
}
3. 标准输出:cout
cout
是用于向控制台输出数据的标准对象。常与插入运算符 <<
搭配使用,可以输出各种类型的数据。
示例:
#include <iostream>
using namespace std;
int main() {
cout << "Hello, World!" << endl; // 输出字符串,并换行
int number = 100;
cout << "Number: " << number << endl; // 输出整型变量
return 0;
}
说明:
endl
用于输出换行,并刷新输出缓冲区。- 多个输出可以通过连续使用
<<
运算符连接。
4. 标准输入:cin
cin
是用于从控制台读取数据的标准对象。它与提取运算符 >>
搭配使用,可以将输入的数据存储到变量中。
示例:
#include <iostream>
using namespace std;
int main() {
int age;
cout << "请输入你的年龄:";
cin >> age; // 从控制台读取整数
cout << "你输入的年龄是: " << age << endl;
return 0;
}
注意:
cin
默认以空白字符(空格、制表符、换行符)作为分隔符,读取第一个遇到的非空白数据。- 使用
getline(cin, str)
可以读取包含空格的一整行字符串。
5. 格式化输出
C++ 提供了格式化输出的功能,可以通过控制符来设置输出宽度、精度、对齐方式等。
示例:
#include <iostream>
#include <iomanip> // 包含格式化控制函数
using namespace std;
int main() {
double pi = 3.14159265;
// 设置输出宽度为 10,总共输出 10 个字符,保留 4 位小数
cout << "pi = " << setw(10) << fixed << setprecision(4) << pi << endl;
return 0;
}
说明:
setw(n)
:设置输出宽度为 n 个字符。fixed
:使用定点表示法。setprecision(n)
:设置小数点后的位数为 n。
6. 标准错误输出:cerr
与 clog
cerr
用于输出错误信息,通常不会被缓冲,立即输出错误信息。clog
用于输出日志信息,有缓冲机制。
示例:
#include <iostream>
using namespace std;
int main() {
cerr << "错误:输入无效!" << endl;
clog << "日志:程序已启动。" << endl;
return 0;
}
7. 示例代码
下面是一个综合示例,展示了如何使用 cin
和 cout
进行基本的输入输出,以及使用格式化控制符调整输出格式:
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
int main() {
// 标准输出
cout << "欢迎使用 C++ 输入输出示例程序" << endl;
// 读取用户输入的姓名(包含空格)
string name;
cout << "请输入你的姓名:";
getline(cin, name); // 读取整行输入
// 读取用户输入的年龄
int age;
cout << "请输入你的年龄:";
cin >> age;
// 输出用户信息,格式化显示
cout << "\n用户信息:" << endl;
cout << "姓名: " << setw(10) << name << endl;
cout << "年龄: " << age << endl;
// 使用 cerr 输出错误示例
if (age < 0) {
cerr << "错误:年龄不能为负数!" << endl;
}
return 0;
}
可能的输出:
欢迎使用 C++ 输入输出示例程序
请输入你的姓名:张三
请输入你的年龄:25
用户信息:
姓名: 张三
年龄: 25
8. 参考资料
总结
C++ 的基本输入输出主要依赖于 <iostream>
头文件,其中 cout
和 cin
分别用于输出和输入。通过使用格式化控制符,如 setw
、fixed
和 setprecision
,可以对输出内容进行美观的格式化。掌握这些基础输入输出操作有助于编写交互性更强、用户体验更友好的程序。
发表回复