当前位置:网站首页>标准输入流
标准输入流
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;
}
边栏推荐
猜你喜欢
Getting started with el-tabs (tab bar)
被数据分析重塑的5个行业
C语言版本和GCC版本
信息学奥赛一本通T1446:素数方阵
线程基础(二)
Detailed explanation of cause and effect diagram of test case design method
华为设备配置BFD与接口联动(触发与BFD联动的接口物理状态变为Down)
word之图表目录中点号位置提升3磅
Data warehouse buried point system and attribution practice
(十五)51单片机——呼吸灯与直流电机调速(PWM)
随机推荐
HCIP笔记整理 2022/7/18
测试用例设计方法之因果图详解
最新版图书馆招聘考试常考试题重点事业单位
第一章:ARM公司Cortex-M 系列处理器介绍,第二章:嵌入式软件开发介绍和第三章:Cortex-M3和Cortex-M4处理器的一般介绍
C语言实现通讯录功能(400行代码实现)
Pinned Articles-
Docker-compose安装mysql
模型训练前后显卡占用对比、多卡训练GPU占用分析【一文读懂】
mysql慢查询优化
被数据分析重塑的5个行业
empty() received an invalid combination of arguments - got (tuple, dtype=NoneType, device=NoneType),
QT信号与槽
Nacos单机模式的安装与启动
安全狗云原生安全能力全面亮相全球数字经济大会暨ISC互联网安全大会
戳Web3的神话?戳到铁板。
现货黄金分析的主要流派
pyspark --- count the mode of multiple columns and return it at once
Spark 的架构与作业提交流程
【RT_Thread学习笔记】---以太网LAN8720A Lwip ping 通网络
C语言入门实战(14):选择排序