用于字符输入的流成员函数
来源:互联网 发布:mac移动硬盘安装win10 编辑:程序博客网 时间:2024/06/06 09:21
除了可以用cin输入标准类型的数据外还可以用istream类流对象的一些成员函数实现字符的输入。
1.用get函数读入一个字符
(1)不带参数的get函数
其调用函数为
cin.get()
用来从指定的输入流中提取一个字符(包括空字符),函数的返回值就是读入的字符。若遇到输入流中的文件结束符,则函数值返回文件结束标志EOF(End Of File),一般以-1代表EOF,用-1而不用0或者正值,是考虑到不与字符的ASCII代码混淆,但不同的C++系统所用的EOF值有可能不同。
例:用get函数读入字符
#include<iostream>
using namespace std;
int main()
{
int c;
cout<<"enter a sentence:"<<endl;
while((c=cin.get())!=EOF)
cout.put(c); //cout.put('a')是专用于输出单个字符的成员函数
return 0;
}
运行情况如下:
enter a sentence:
I study C++ very hard! //输入一行字符
I study C++ very hard! //输入该字符
----------------------------------------------------------------------------------------------------------------------------
(2)有一个参数的get函数
其调用形式为
cin.get(ch)
其作用是从输入流中读取一个字符,赋给字符变量ch。如果读取成功则函数返回非0值(真),如失败(遇文件结束符)则函数返回0值(假)。
例:
#include<iostream>
using namespace std;
int main()
{
char c;
cout<<"enter a sentence:"<<endl;
while(cin.get(c))
{cout.put(c);}
cout<<"endl"<<endl;
return 0;
}
----------------------------------------------------------------------------------------------------------------------------
(3)有3个参数的get函数
其调用形式为
cin.get(字符数组,字符个数n,终止字符)
或
cin.get(字符指针字符个数n,终止字符)
读取成功返回非0值(真),失败返回0值(假)
例:
#include<iostream>
using namespace std;
int main()
{
char ch[20]l
cout<<"enter a sentence:"<<endl;
cin.get(ch,10,'/n');
cout<<ch<<endl;
return 0;
}
运行情况如下:
enter a sentence:
I study C++ very hard! //输入
I study C //输出
----------------------------------------------------------------------------------------------------------------------------
(3)用成员函数getline函数读入一行字符
其调用形式为
cin.getline(字符数组(或字符指针),字符个数n,终止标识符)
例:
#include<iostream>
using namespace std;
int main()
{
char ch[20];
cout<<"enter a sentence:"<<endl;
cin>>ch;
cout<<"The string read with cin is :"<<ch<<endl;
cin.getline(ch,20,'/'); //读19个字符或遇'/'结束
cout<<"The second part is:"<<ch<<endl;
cin.getline(ch,20); //读19个字符或遇'/n'结束,,,,,想想为什么是读19个字符呢?
cout<<"The third part is:"<<ch<<endl;
return 0;
}
运算结果如下:
enter a sentence:
I study C++ very hard!
The string read with cin is :I
The second part is: study C++ very har
The third part is:
Press any key to continue
----------------------------------------------------------------------------------------------------------------------------
istream类的其他成员函数
常用的有以下几种:
1.eof 函数
eof是end of file 的缩写,表示“文件结束”。从输入流读取数据,如果达到文件末尾(遇文件结束符),eof 函数值为非零值(真),否则为0(假)。
例:逐个读入一行字符,将其中的非空字符输出
#include<iostream>
using namespace std;
int main()
{
char c;
while(!cin.eof())
if((c=cin.get())!=' ')
cout.put(c);
return 0;
}
运算结果:
I study C++ very hard!
IstudyC++veryhard!
^Z
Press any key to continue
----------------------------------------------------------------------------------------------------------------------------
另外,
还有peek 函数,cin.peek()
putback函数,cin.putback(ch)
ignore 函数,cin.ignore(n,终止字符)
相关用法,问问度娘或者google去。。。
- 用于字符输入的流成员函数
- 用于字符输入的流成员函数使用举例
- 用于判断字符结尾的输入流类
- 输入流的常用成员函数
- 输入流类(istream)常用成员函数
- Getchar函数从标准输入读取读取一个字符并返回它的值。如果输入中不再存在任何字符,函数就会返回常量EOF(在stdio.h中定义),用于提示文件的结尾。
- 关于函数指针用于类成员函数
- hash值计算函数用于中文字符的错误纠正
- 编写一个密码类,其中包含一个 str 密码字符串私有成员数据,一个“==”运算 符重载成员函数,用于比较用户输入的密码是否正确。并用数据测试该类。
- 8.3 编写一个密码类,其中包含一个 str 密码字符串私有成员数据,一个“==”运算 符重载成员函数,用于比较用户输入的密码是否正确。并用数据测试该类
- 字符输入函数在屏幕的显示
- 字符输入/输出函数的format
- 利用字符函数打印出输入的字符
- 用于限制文本中输入框中只能输入日期格式的函数
- 一些与输入有关的istream类成员函数
- 使用ios的成员函数进行格式化输入和输出
- C++ ostream类包含的一个简单的用于控制格式的成员函数setf precision
- 利用类的数据成员和成员函数:输入三个整数,输出它们的最大值 .
- C#.NET发送EMAIL的几种方法
- 汉诺塔 X
- goahead 利用ajax实现局部刷新
- Android中内容观察者的使用---- ContentObserver类详解
- obejec-c单例类宏
- 用于字符输入的流成员函数
- js总结下(正则表达式)
- Oracle服务器监控指标和分析
- 表格的隔行间色显示和国际化处理页面
- 【菜】SDK做的一个U盘小工具
- 开始Winsock编程-简单的TCP客户端
- ubuntu Sublime Text 安装
- GUI 剖析之 关机命令
- Testing