一.输入和输出的基本介绍
在头文件iostream中定义有两个流类:输入流类istream和输出流类ostream,且用这两个类定义了流对象cin和cout:
istream cin
ostream cout
cin是一个istream类的对象,它从标准输入设备(键盘)获取数据,程序中的变量通过流提取符“>>”从流中提取数据。流提取符“>>”从流中提取数据时通常跳过输人流中的空格、tab键、换行符等空白字符,而getline可以识别输入的空格,换行,tab,注意区分。注意:只有在输入完数据再按回车键后,该行数据才被送入键盘缓冲区,形成输入流,提取运算符“>>”才能从中提取数据。注意保证从流中读取数据能正常进行。
cout是一个ostream类的对象,它有一个成员运算函数operator<<,每次调用的时候就会向输出设备输出。operator用运算符重载,可以接受不同类型的数据,如整型、浮点型、字符串甚至指针,等等。cout是标准输出设备,一般输出到屏幕
二.那c++的cout/cin与c的printf/scanf有什么区别呢?为什么那些大佬们喜欢用printf/scanf呢?
1.性质不一样
cin是标准化输入,包含在头文件<iostream>中。
scanf是格式化输入,包含在头文件<stdio.h>中。
2.效率不一样
cin先把要输入的东西存入缓冲区,再输入,导致的输入操作效率稍低,但书写简便。(效率低但简单)
scanf的是用指针把要输入的东西输入的,输入效率比较高,