60标准输入流

简介: 60标准输入流

C++入门——60s从0到1

标准输入流

 

在C++中,标准输入流是用于从用户获取输入的一种输入输出方式。标准输入流使用标准库中的`iostream`头文件来实现,其中`cin`对象是标准输入流的一种,用于从键盘读取用户输入的数据。在这篇文章中,我们将详细讲解C++标准输入流的用法和技巧。

 

读取基本数据类型

 

在C++中,可以使用`cin`对象来读取各种基本数据类型的输入,如整数、浮点数、字符和布尔值等。下面是一些示例代码:

 

#include <iostream>
using namespace std;
 
int main() {
    // 读取整数
    int x;
    cout << "请输入一个整数:" << endl;
    cin >> x;
    cout << "你输入的整数是:" << x << endl;
 
    // 读取浮点数
    float y;
    cout << "请输入一个浮点数:" << endl;
    cin >> y;
    cout << "你输入的浮点数是:" << y << endl;
 
    // 读取字符
    char z;
    cout << "请输入一个字符:" << endl;
    cin >> z;
    cout << "你输入的字符是:" << z << endl;
 
    // 读取布尔值
    bool flag;
    cout << "请输入一个布尔值:" << endl;
    cin >> flag;
    cout << "你输入的布尔值是:" << boolalpha << flag << endl;
 
    return 0;
}

 

在这个例子中,程序使用了`cin`对象来读取不同类型的用户输入。需要注意的是,在读取字符时,需要使用单引号将字符括起来。在读取布尔值时,使用了`boolalpha`流控制符来将布尔值以文字形式输出到屏幕上。

 

格式化输入

 

在实际应用中,我们通常需要对用户输入的内容进行格式化处理。在C++中,可以使用各种运算符和格式化字符串来实现格式化输入。下面是一些示例代码:

 

#include <iostream>
using namespace std;
 
int main() {
    // 读取带千分位分隔符的整数
    int x;
    cout << "请输入一个带千分位分隔符的整数:" << endl;
    cin.width(7); // 设置宽度
    cin >> setfill('0') >> x; // 使用setfill和setw设置填充字符和宽度
    cout << "你输入的整数是:" << x << endl;
 
    // 读取固定小数点宽度的浮点数
    float y;
    cout << "请输入一个固定小数点宽度的浮点数:" << endl;
    cin.precision(2); // 设置精度
    cin >> fixed >> y; // 使用fixed和setprecision设置固定小数点宽度和精度
    cout << "你输入的浮点数是:" << y << endl;
 
    // 读取对齐的多个数据项
    int a, b, c;
    cout << "请依次输入三个整数:" << endl;
    cin.width(10); // 设置宽度
    cin >> a >> b >> c; // 从左到右依次读取三个数据项
    cout << a << " " << b << " " << c << endl; // 使用空格进行对齐输出
 
    return 0;
}

在这个例子中,程序使用了各种运算符和格式化字符串来实现不同的格式化输入效果。需要注意的是,在使用`width`和`precision`设置宽度和精度时,需要同时使用它们才能生效。在使用左对齐和其他对齐方式时,需要使用`left`、`right`等流控制符来指定对齐方式。

目录
相关文章
|
Linux 网络安全 Apache
Centos下操作Apache httpd
Centos下操作Apache httpd
372 0
|
缓存 监控 小程序
App性能测试揭秘(Android篇)
性能测试在移动测试领域一直是一个大难题,它最直观的表现是用户在前台使用 App 时的主观体验,然而决定体验优劣的背后,涉及到了许许多多的技术变迁。阅读此文,带你揭秘App性能测试。
5694 0
App性能测试揭秘(Android篇)
|
人工智能 监控 算法
未来技术趋势:人工智能与物联网的融合
【8月更文挑战第15天】本文深入探讨了人工智能(AI)与物联网(IoT)的结合如何引领技术革新,重塑行业格局。通过分析AI和IoT各自的发展趋势及其交汇点,我们揭示了这一融合对智能家居、工业自动化、健康医疗等领域带来的变革。文章还讨论了在追求这些先进技术时可能遇到的挑战和道德问题,为读者提供了一幅未来技术发展的蓝图。
|
机器学习/深度学习 弹性计算 缓存
阿里云服务器经济型e实例与通用算力型u1实例对比分析与选择指南
在阿里云服务器的实例规格中,经济型e实例和通用算力型u1实例是很多个人和普通企业级用户常见的选择,经济型e实例与通用算力型u1实例的主要区别在于性能、应用场景及价格策略。本文将详细对比这两种实例的性能、应用场景及价格策略,以供参考。
|
监控 Java 测试技术
如何解读 jstat 工具输出的 G1 垃圾回收器性能数据?
如何解读 jstat 工具输出的 G1 垃圾回收器性能数据?
|
Python
Python列表推导式和嵌套的列表推导式
Python列表推导式和嵌套的列表推导式
346 0
|
算法 Java C++
14-理解Java中的不同引用类型:强引用、软引用、弱引用和虚引用
这篇文章将深入探讨Java中的四种引用类型:强引用、软引用、弱引用和虚引用。我们将逐一解释每种引用类型的特性和用途。
242 0
14-理解Java中的不同引用类型:强引用、软引用、弱引用和虚引用
|
前端开发 API 开发者
.NET Web应用配置本地IIS(实现Visual Studio离线运行与调试
.NET Web应用配置本地IIS(实现Visual Studio离线运行与调试
528 0
.NET Web应用配置本地IIS(实现Visual Studio离线运行与调试
|
存储 弹性计算 安全
阿里云服务器4核8G配置收费标准及新老用户优惠价格整理与参考
阿里云服务器4核8G配置支持按量(小时)付费和按月付费及按年付费,按量付费收费标准最低0.533866元每小时,按月收费最低收费标准为231.0元1个月,实际购买中,新老用户均可通过阿里云的各个活动下单购买,新用户最低优惠价格为1367.86元1年,老用户最低优惠价格为2804.71元1年,下文是阿里云服务器4核8G配置最新收费标准及新老用户优惠价格。
929 0
阿里云服务器4核8G配置收费标准及新老用户优惠价格整理与参考
|
自然语言处理 数据可视化 算法
ElasticSearch学习笔记(三)-可视化界面Kibana及ES中文分词配置
ElasticSearch学习笔记(三)-可视化界面Kibana及ES中文分词配置
ElasticSearch学习笔记(三)-可视化界面Kibana及ES中文分词配置