输入数据流,通过两个函数读取字符/字符串:get、getline
get:从指定的输入流中读取一个字符(包含空白字符)
getline:读取不超过设定字节的字符串
代码为栗:
#includeint main() { int a; float b; std::cin >> a >> b; std::cout << "get a: " << a << ", get b: " << b << std::endl; std::cin.get(); //读取回车操作符,不加这行,后面读取的就是回车键 char c; c = std::cin.get(); std::cout << "get c: " << c << std::endl; char d; std::cin >> d; std::cout << "get d: " << d << std::endl; std::cin.get(); char f[50]; std::cin.getline(f, 5); std::cout << "get f: " << f << std::endl; }
输出结果:
10 20.5 ---> 交互界面输入并回车 get a: 10, get b: 20.5 ---> 打印结果 c ---> 交互界面输入并回车 get c: c ---> 打印结果 d ---> 交互界面输入并回车 get d: d ---> 打印结果 vnsijfmav ---> 交互界面输入并回车 get f: vnsi ---> 打印结果2. cout
输出数据流
| 操作符 | 说明 |
|---|---|
| oct | 输出转为八进制的数值(该变量本身没有转变) |
| dec | 输出转为十进制的数值(该变量本身没有转变) |
| hex | 输出转为十六进制的数值(该变量本身没有转变) |
| setw(int width) | 设置输出宽度 |
| setfill(char ch) | 设置ch为填充字符输出 |
| setprecision(int num) | 设置浮点类型输出精度位数 |
代码为栗:
#include#include //setw setfill等操作符需要该头文件 int main() { int a = 50; float b = 50.858585; std::cout << "八进制结果: " << std::oct << a << std::endl; std::cout << "十进制结果: " << std::dec << a << std::endl; std::cout << "十六进制结果: " << std::hex << a << std::endl; std::cout << "设置输出宽度为5(输出5个字节): " << std::setw(5) << a << std::endl; std::cout << "输出5个字节,不足用“$”填充: " << std::setw(5) << std::setfill('$') << a << std::endl; std::cout << "设置输出精度为5: " << std::setprecision(5) << b << std::endl; }
输出结果:
八进制结果: 62 十进制结果: 50 十六进制结果: 32 设置输出宽度为5(输出5个字节): 32 输出5个字节,不足用“$”填充: $$$32 设置输出精度为5: 50.859
学习《c++入门很简单》笔记



