
【C++ Primer 第五版】初识输入输出
发布日期:2021-05-15 09:06:52
浏览次数:16
分类:精选文章
本文共 1765 字,大约阅读时间需要 5 分钟。
C++输入输出编程入门
C++语言中,输入输出(IO)操作是开发基础的重要部分。它定义了如何与程序外界的文件或用户进行通信。需要使用标准库来实现输入输出功能,而
标准输入输出对象
标准库为我们提供了四个核心的IO对象,它们是编程中的常用工具:
std::cout
:标准输出流,用于向屏幕输出信息。std::cin
:标准输入流,可以从键盘读取数据。std::cerr
:错误输出流,用于报告错误信息。std::clog
:日志输出流,记录程序运行时的日志信息。
这些对象都属于 std::ostream
类,它们以文件流的方式运作。std::cout
是最常用的,它像打印流一样直接输出到屏幕,而**std::cin
**则从键盘读取输入。
使用标准库编写程序
以下是一个简单的输入输出程序示例,用来演示读取两个数字并计算它们的和:
#includeusing namespace std; // 给程序带上std标准库名字空间int main() { // 读取用户输入 cout << "Enter two numbers: "; cin >> v1 >> v2; // 这里可能会有错误,请看以下修正 // 计算并显示结果 cout << "The sum of " << v1 << " and " << v2 << " is " << v1 + v2 << endl; return 0;}
修正:
注意v1
和v2
的正确初始化方式:
int v1 = 0, v2 = 0;cin >> v1 >> v2;
这样才符合C++语言的语法规范。
命名空间的作用
所有标准库的对象和函数都属于 std
命名空间,正确使用前缀**std::
**是非常重要的。例如:
cout << "Hello, World!" << endl; // 正确书写方式// 或者使用`using namespace std;`简化语法:using namespace std;cout << "Hello, World!" << endl;
命名空间的使用可以避免名称冲突,确保代码清晰、可维护。
练习与代码示例
- 1.3 编写Hello, World程序
#includeusing namespace std;int main() { cout << "Hello, World!" << endl; return 0;}
- 1.4 计算两数之积
#includeusing namespace std;int main() { cout << "Enter two numbers: " << endl; int v1, v2; cin >> v1 >> v2; cout << "The product of " << v1 << " and " << v2 << " is " << v1 * v2 << endl; return 0;}
- 1.5 输出分开到独立语句
#includeusing namespace std;int main() { cout << "First statement: Hello, C++! " << endl << "Second statement: This is a multi-line output example." << endl; return 0;}
- 1.6 解释程序的合法性
输入输出操作需要遵循特定规则。例如:
// 不合法的写法cout << "不行,不要写在一个语句里";// 御规矩写法cout << "Hello, ";cout << "世界!" << endl;
总结
C++的标准库为我们提供了强大的IO功能,<iostream>
是开发的基础。通过使用 std::cout
和 std::cin
,我们可以轻松地与程序用户进行对话。理解这些工具的用法和原理,是掌握C++编程的重要一步。
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2025年04月13日 23时26分06秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Leetcode第557题---翻转字符串中的单词
2019-03-07
Problem G. The Stones Game【取石子博弈 & 思维】
2019-03-07
Unable to execute dex: Multiple dex files
2019-03-07
Java多线程
2019-03-07
Unity监听日记
2019-03-07
openssl服务器证书操作
2019-03-07
expect 模拟交互 ftp 上传文件到指定目录下
2019-03-07
linux系统下双屏显示
2019-03-07
PDF.js —— vue项目中使用pdf.js显示pdf文件(流)
2019-03-07
我用wxPython搭建GUI量化系统之最小架构的运行
2019-03-07
我用wxPython搭建GUI量化系统之多只股票走势对比界面
2019-03-07
selenium+python之切换窗口
2019-03-07
重载和重写的区别:
2019-03-07
搭建Vue项目步骤
2019-03-07
账号转账演示事务
2019-03-07
idea创建工程时错误提醒的是architectCatalog=internal
2019-03-07
SpringBoot找不到@EnableRety注解
2019-03-07
简易计算器案例
2019-03-07
在Vue中使用样式——使用内联样式
2019-03-07