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`等流控制符来指定对齐方式。

目录
相关文章
|
4天前
|
存储 程序员 C++
4数据类型
4数据类型
15 1
|
4天前
|
设计模式 Go
依赖注入实用指南:深入解析inject库
依赖注入实用指南:深入解析inject库
62 0
|
4天前
|
C++
59标准输出流
59标准输出流
10 0
|
4天前
|
C语言
C语言if的控制结构
C语言if的控制结构
62 0
|
4天前
|
移动开发 Java Android开发
构建高效Android应用:探究Kotlin协程的优势
【2月更文挑战第14天】 在移动开发领域,性能优化和响应性是至关重要的。随着Kotlin语言在Android平台中的普及,协程作为其提供的一种轻量级线程管理机制,为开发者提供了编写异步、非阻塞代码的能力。本文将深入探讨Kotlin协程在Android应用开发中的优势,通过实例分析展示如何利用协程简化异步流程,提高应用性能,并保证用户界面的流畅性。
|
4天前
|
存储 编译器 C++
c++字符串
c++字符串
22 0
|
4天前
|
C++
c++关于值传递,指针传递,引用传递这几个方面还会存在误区
c++关于值传递,指针传递,引用传递这几个方面还会存在误区
18 0
|
4天前
|
C++
c++数字
c++数字
23 0
|
4天前
|
安全 C++
c++数据封装
c++数据封装
17 0
|
4天前
|
存储 Python
Python写斐波那契数列
Python写斐波那契数列
12 0