第2单元 C++程序基础
文章目录
2.1 Aloha World程序
1. 功能描述
在屏幕上输出“Aloha World”。
2. 源文件
#include<iostream>//输入输出的头文件
int main() {
//输出"Aloha, World!"
std::cout << "Aloha, World!" << std::endl;
//假如显示窗口闪退,保持显示窗口
std::cin.get();//一直等待输入
return 0;
}
3. 知识点及感想
- 头文件扩展名包括“.h”、“.hpp”、“hxx”,源文件扩展名包括“.c”、“.cpp”、“cxx”。
- C语言中的头文件需要标出扩展名(.h),但是现在C++不需要。
- 在C++中将 “<<” 定义为流输出运算符,称为 运算符重载 ,但是在C语言和Java语言中没有这种现象。
- “std::” 是 名字空间(namespace) ,用于表示标识符的作用域。假如没有名字空间,会使得多个相同的指令产生混乱,所以C++中有名字空间。如果有名字空间但是不声明,将不会正确调用到相应的标识符。最好对于标识符不偷懒,但以下也给出偷懒的办法:
-
名字空间的作用是隔离标识符的作用范围。但是2022版本的VS也可以识别出名字空间里面的主函数,即“入口点”。
-
标准规范:
- 不允许使用“制表”、“分页”等特殊字符,应该都在IDE中转换成空格。
- 函数必须将返回值明确列出。
2.1 C++的输入输出
1. 关于输入输出
-
输入输出的分类
根据源目分为:标准IO(Standard I/O)、文件IO(File I/O)、字符串IO(String I/O)、网络IO(Network I/O)。 -
C和Java的输入输出
输入语法 | 输出语法 | |
---|---|---|
C | scanf() fgetchar()/gets() |
printf() putchar()/puts() |
Java | Scanner类 …… |
System.out.println()/print()/printf()…… …… |
C++ | 标准输入流cin | 标准输出流cout |
C++使用一种叫“流”的概念对屏幕、键盘或者文件进行输入输出操作。
流(Stream) | 操作符(Operators) | 函数(Functions) |
---|---|---|
cin | 流提取运算符 extraction operator |
cin.get() 从流中读并取走一个字符 cin.getline() 从流中读取字符,直至行尾或指定的分隔符 cin.ignore() 从流中读取并含弃指定数量的字符 |
cout | 流插入运算符 insertion operator |
cout.put() 将字符写到流中(无格式) cout.flush() 将流中缓存内容全部输出 |
cout 有缓冲区,在特定的时候信息才会输出到屏幕上。使用 flush 可以 强制 cout 将信息输出到屏幕上。
2. 程序代码示例
-
功能描述:实现键盘输入到程序输出内容。
-
源代码
#include<iostream>
using std::cin;
using std::cout;
using std::endl;
int main() {
int a;
float b;
cout << "请输入一个整数:";
cin >> a;
cout << "你输入的是:" << a << endl;
cout << "请再输入一个浮点数:";
cin >> b;
cout << "你又输入了:" << b << endl;
cout << "你要不再试试同时输入(先整数再小数):";
cin >> a >> b;
cout << "也行,a=" << a << ",b=" << b << endl;
}
- 结果
请输入一个整数:3
你输入的是:3
请再输入一个浮点数:3.3
你又输入了:3.3
你要不再试试同时输入(先整数再小数):9 3.3
也行,a=9,b=3.3