当前位置:网站首页>标准输入流
标准输入流
2022-08-03 06:34:00 【干饭小白】
标准输入流对象 cin
重点api:
cin.get() //一次只能读取一个字符
cin.get(一个参数) //读一个字符
cin.get(三个参数) //可以读字符串
cin.getline()
cin.ignore()
cin.peek()
cin.putback()
标准输入流常见api编程案例
cin接受输入时,>> 会过滤掉不可见字符(例如:空格、回车、TAB等)
也就是说,从第一个非空白符开始读,直到空白符或者文件结束为止
#include <iostream>
using namespace std;
int main01(void)
{
char YourName[50];
int myInt;
long myLong;
double myDouble;
float myFloat;
unsigned int myUsigned;
cout<<"请输入一个int:";
cin>>myInt;
cout<<"请输入一个Long";
cin>>myLong;
cout<<"请输入一个Double:";
cin>>myDouble;
cout<<"请输入你的姓名:";
cin>>YourName;
cout<<"\n\n你输入的数是:"<<endl;
cout<<"int:\t"<<myInt<<endl;
cout<<"Long:\t"<<myLong<<endl;
cout<<"double:\t"<<myDouble<<endl;
cout<<"char *:\t"<<YourName<<endl;
return 0;
}
int main02(void)
{
char ch;
while((ch=cin.get())!=EOF) //EOF = -1
{
cout<<ch;
}
return 0;
}
//链式编程:函数的返回值是对象本身,可以当左值使用
int main03(void)
{
char a,b,c;
cin.get(a);
cin.get(b);
cin.get(c);
cout<<a<<b<<c<<endl; //<<重载操作符,其实本质上也是函数
cout.flush(); //刷新缓冲区
cin.get(a).get(b).get(c);
cout<<a<<b<<c<<endl;
return 0;
}
int main04(void)
{
char buf1[256];
char buf2[256];
cout<<"请输入你的字符串 不超过 256"<<endl;
cin.getline(buf1,256,'\n');
cout<<buf1<<endl;
//cin.getline和cin的区别,能不能带空格
cin>>buf2; //遇到空格停止提取输入流
cout<<buf2<<endl;
return 0;
}
//输入 aa bb cc dd
int main05(void)
{
int intchar;
char buf1[256];
char buf2[256];
cin>>buf1;
//istream &ignore( streamsize num=1, int delim=EOF );
cin.ignore(2);
// int peek();
intchar = cin.peek();
cin.getline(buf2,256);
cout<<buf2<<endl;
intchar = cin.peek();
cout<<intchar<<endl;
return 0;
}
int main(void)
{
cout<<"请输入一句话:"<<endl;
char c = cin.get();
//输入整数和字符分开处理
if(c>='0' && c<='9') //如果是数字
{
int n;
cin.putback(c); //往输入流中吐出一个数据
cin>>n;
cout<<"输入数字:"<<n<<endl;
}
else //否则一定是字符
{
cin.putback(c);
string str;
getline(cin,str);
cout<<"输入字符串:"<<str<<endl;
}
return 0;
}
边栏推荐
- 【着色器实现Glow可控局部发光效果_Shader效果第十三篇】
- drop database出现1010
- HCIP笔记整理 2022/7/18
- Postman will return to the interface to generate a json file to the local
- boot-SSE
- 2022年 SQL 优化大全总结详解
- pyspark --- count the mode of multiple columns and return it at once
- 伦敦银现货市场如何使用多条均线?
- Cesium loads offline maps and offline terrain
- El - tree set using setCheckedNodessetCheckedKeys default check nodes, and a new check through setChecked specified node
猜你喜欢
Multi-Head-Attention principle and code implementation
信息学奥赛一本通T1450:Knight Moves
word之图表目录中点号位置提升3磅
El - tree to set focus on selected highlight highlighting, the selected node deepen background and change the font color, etc
重量级大咖来袭:阿里云生命科学与智能计算峰会精彩内容剧透
Docker-compose安装mysql
empty() received an invalid combination of arguments - got (tuple, dtype=NoneType, device=NoneType),
PHP 获取服务器信息
MySQL - 触发器
10 分钟彻底理解 Redis 的持久化和主从复制
随机推荐
Flink对比Spark
torch.nn.modules.activation.ReLU is not a Module subclass
安全狗云原生安全能力全面亮相全球数字经济大会暨ISC互联网安全大会
从学生到职场的转变
Charles capture shows
solution Week5
Example of embedding code for continuous features
现货黄金分析的主要流派
信息学奥赛一本通T1449:魔板
升级
1066 Root of AVL Tree // AVL平衡二叉搜索树模板
(十四)51单片机——LCD1602实现滚动效果
Spark 的架构与作业提交流程
【OpenCV】 - 显示图像API之imshow()对不同位深度(数据类型)的图像的处理方法
重量级大咖来袭:阿里云生命科学与智能计算峰会精彩内容剧透
pt-online-schema-change工具使用的一次
924. 尽量减少恶意软件的传播 前缀和
postman将接口返回结果生成csv文件到本地
华为设备配置BFD状态与接口状态联动
Nacos下载与安装