【C++】输入输出流 ② ( cin 输入流对象 | 常用的 iostream 类型的 输入 / 输出 流对象 | cin 常用 api 简介 | cin 从控制台接收键盘输入数据 )

2023-12-06 15:40:02 浏览数 (2)

文章目录
  • 一、cin 输入流对象简介
    • 1、常用的 iostream 类型的 输入 / 输出 流对象
    • 2、cin 输入流对象
    • 3、cin 常用 api 简介
    • 4、cin 从控制台接收键盘输入数据

一、cin 输入流对象简介


1、常用的 iostream 类型的 输入 / 输出 流对象

iostream 头文件 供了 输入 / 输出流 功能 , 借助该 iostream 类型对象 可以方便地与控制台进行交互 ; 如 : 读取控制台数据 , 输出 信息 / 错误信息 / 调试日志 到 控制台 ;

常用的 iostream 类型的 输入流对象 : iostream 头文件中 有 以下 4 种常用输入 / 输出流对象 ;

  • cin : 标准输入流 , 该对象 用于从 标准输入流 ( 控制台 ) 读取数据 ;
  • cout : 标准输出流 , 该对象 用于向 标准输出流 ( 控制台 ) 输出数据 ;
  • cerr : 标准错误流 , 该对象 用于向 标准错误流 ( 控制台 ) 输出错误信息 ;
  • clog : 标准日志流 , 该对象 用于向 标准日志流 ( 控制台 ) 输出日志信息 ;

2、cin 输入流对象

iostream 头文件中的 输入流对象 cin , 是 istream 类型的 通用输入流 ;

cin 可以接收 控制台 键盘输入 ,

代码语言:javascript复制
__PURE_APPDOMAIN_GLOBAL extern _CRTDATA2_IMPORT istream cin;

下面将分析 istream 类型的 cin 通用输入流 对象 的相关 函数 API ;

3、cin 常用 api 简介

cin 常用 api 简介 :

  • cin.get() : 读取一个字符 , 并返回读取的字符 ;
  • cin.peek() : 查看下一个字符 , 但不读取它 ;
  • cin.ignore() : 忽略输入流中的 一个字符 或 一行数据 ;
  • cin.read() : 从输入流中读取 指定个数 的字符 ;

4、cin 从控制台接收键盘输入数据

cin >> 变量 代码的作用是 从 控制台 接收数据保存到 变量中 ;

其作用是 阻塞 控制台 , 阻塞等待 用户输入 , 用户输入后 , 按下回车 , 即可将输入的数据保存到 变量 中 ;

特别注意 : 如果获取字符串 , 字符串中的空格会干扰 字符串输入 ;

如 : 输入 “Hello World” , 空格后的 World 字符串会被屏蔽 , 只有 Hello 能被读取到变量中 ;

代码示例 :

代码语言:javascript复制
#include "iostream"
using namespace std;

int main() {

	int a;
	long b;
	char buf[32];

	// 控制台接收 int 类型数据
	cin >> a;

	// 控制台接收 long 类型数据
	cin >> b;

	// 控制台接收 字符串 
	// 遇到 空格 或 回车 中断
	// 遇到第一个空格后的数据是无效数据
	cin >> buf;

	// 输出接收的数据
	cout << "a : " << a << " , b : " << b << " , buf : " << buf << endl;

	// 控制台暂停 , 按任意键继续向后执行
	system("pause");

	return 0;
};

执行结果 :

1 2 hello world a : 1 , b : 2 , buf : hello 请按任意键继续. . .

0 人点赞