1. istream的类方法常用的istream的类方法有:
方法get(char&)和get(void)提供不跳过空白的单字符输入功能;函数get(char*, int, char)和getline(char*, int, char)在默认情况下读取整行而不是一个单词。单字符输入 :
在使用char参数或没有参数的情况下,get()方法读取下一个输入字符,即使该字符是空格、制表符或换行符。
get(char & ch)------该版本将输入字符赋给其参数,并返回调用对象(cin)。get(void)-----------该版本将输入字符转换为整型(通常是int),并将其返回。两者的主要特性如下:
字符串输入 :
getline()成员函数和get()的字符串读取版本都读取字符串,它们的函数特征标相同(这是从更为通用的模板声明简化而来的):
istream & get(char *, int, char);istream & get(char *, int);istream & getline(char *, int, char);istream & getline(char *, int);【 注 :第一个参数是用于放置输入字符串的内存单元的地址。第二个参数比要读取的最大字符数大1(额外的一个字符用于存储结尾的空字符,以便将输入存储为一个字符串)。第3个参数指定用作分界符的字符,只有两个参数的版本将换行符用作分界符。上述函数都在读取最大数目的字符或遇到换行符后为止】
例如:
char line[50];cin.get(line, 50);//cin.get( )函数将在到达第49个字符或遇到换行符(默认情况)后停止将输入读取到数组中【 注 :get()和getline()之间的主要区别在于,get()将换行符留在输入流中,这样接下来的输入操作首先看到的将是换行符,而getline()抽取并丢弃输入流中的换行符。】
如何忽略字符串中某些内容呢?c++为我们提供了ignore( )函数,该函数的原型如下:
//第一个参数是一个数字,指定要读取忽略的最大字符数,默认为1//第二个参数是一个字符,用作输入的分界符,默认为eofistream & ignore(int = 1, int = eof);//eg:if (ch != 'n') cin.ignore(255, 'n'); //可以用来忽略上次输入流中残余的字符串2. 其他istream方法除前面讨论过的外,其他istream方法包括read()、peek()、gcount()和putback()。
其使用方法如下:
//read()char read_arr[100];cin.read(read_arr, 100);//其返回值类型为istream &,可以这样拼接使用:cin.read(read_arr, 10).read(read_arr + 10, 90);//peek()char input[100];int i = 0;while(cin.peek() != '.') cin.get(input[i++]);input[i]='�';//gcount()char arr[20]; istringstream stream(abc); stream.read(arr, sizeof arr); auto count = stream.gcount();//count = 3//putback()char c;int n;char str[256];cout < = '0') && (c > n; cout < < you have entered number < < n < > str; cout < < you have entered word < < str < < endl;}
MATLAB中条件语句和循环结构的使用方式
云从科技开辟人机协同路径 技术日臻完善
Flash Bet365闪战固态硬盘:专业电竞SSD,明显提高了速度,性能持续稳定
华为三层交换机配置实例
一加在2018年已经进入全球高端智能手机市场份额的前五
istream的类方法?常用的istream的类方法有哪些?
激光焊锡机的出现给电子组装工艺带来的挑战
定电压输入专供RS485通讯接口DC-DC隔离电源模块
LCD驱动芯片,WT0021功能的介绍
NUS成功试飞亚洲首架太阳能四轴无人机
意法半导体:车载娱乐应用带动车载电子产品需求
相敏放大解调器
tda7294功放电路图大全
自动气象站的产品特点是怎样的
医疗机构怎样充分的利用好物联网技术
华为中兴通信基站用大功率贴片TVS介绍
生物医学电子学在生物医学工程中的应用?
十大常用芯片的功能和作用
华为手机要赶超三星 但今年从韩国采购了5.3万亿韩元零件
便携式耐压仪的用途及操作说明