c++ istringstream ostringstream stringstream
2016-05-02 16:37
429 查看
int main() {
//构造字符串流的时候,空格会成为字符串参数的内部分界,例子中对a,b对象
//的输入"赋值"操作证明了这一点,字符串的空格成为了整型数据与浮点型数据的分界点
//利用分界获取的方法事实上完成了字符串到整型对象与浮点型对象的拆分转换过程
//str()成员函数的使用可以让istringstream对象返回一个string字符串
istringstream istr;
istr.str("1 56.7"); // istringstream istr("1 56.7")
cout << istr.str() << endl;
int a;
float b;
istr >> a;
cout << a << endl;
istr >> b;
cout << b << endl;
//ostringstream同样是由一个string对象构造而来,ostringstream类向一个string插入字符
ostringstream ostr;
//ostr.str("abc"); //如果构造的时候设置了字符串参数,那么增长操作的时候不会从结尾开始增加
//,而是修改原来的数据,超出的部分增长
ostr.put('d');
ostr.put('e');
ostr<<"fg";
string str=ostr.str();
cout << str << endl;
stringstream sstr("ccc");
sstr.put('d');
sstr.put('e');
sstr << "fg";
str = sstr.str();
cout << str << endl;
char ch;
string temp;
sstr >> ch;
cout << ch << endl;
sstr >> temp;
cout << temp << endl;
//stringstream类的对象我们还常用它进行string与各种内置类型数据之间的转换
int a=100;
sstr << a;
sstr >> str;
cout << str << endl;
//string转char[]
sstr.clear(); //如果想通过使用同一stringstream对象实现多种类型的转换,注意在
//每一次转化之后都必须调用clear()成员函数
string name="colinguan";
char cname=[2000];
sstr << name;
sstr >> cname;
return 0;
}
//构造字符串流的时候,空格会成为字符串参数的内部分界,例子中对a,b对象
//的输入"赋值"操作证明了这一点,字符串的空格成为了整型数据与浮点型数据的分界点
//利用分界获取的方法事实上完成了字符串到整型对象与浮点型对象的拆分转换过程
//str()成员函数的使用可以让istringstream对象返回一个string字符串
istringstream istr;
istr.str("1 56.7"); // istringstream istr("1 56.7")
cout << istr.str() << endl;
int a;
float b;
istr >> a;
cout << a << endl;
istr >> b;
cout << b << endl;
//ostringstream同样是由一个string对象构造而来,ostringstream类向一个string插入字符
ostringstream ostr;
//ostr.str("abc"); //如果构造的时候设置了字符串参数,那么增长操作的时候不会从结尾开始增加
//,而是修改原来的数据,超出的部分增长
ostr.put('d');
ostr.put('e');
ostr<<"fg";
string str=ostr.str();
cout << str << endl;
stringstream sstr("ccc");
sstr.put('d');
sstr.put('e');
sstr << "fg";
str = sstr.str();
cout << str << endl;
char ch;
string temp;
sstr >> ch;
cout << ch << endl;
sstr >> temp;
cout << temp << endl;
//stringstream类的对象我们还常用它进行string与各种内置类型数据之间的转换
int a=100;
sstr << a;
sstr >> str;
cout << str << endl;
//string转char[]
sstr.clear(); //如果想通过使用同一stringstream对象实现多种类型的转换,注意在
//每一次转化之后都必须调用clear()成员函数
string name="colinguan";
char cname=[2000];
sstr << name;
sstr >> cname;
return 0;
}
相关文章推荐
- c++ string reverse 用法
- C++中vector容器的逆序访问
- C语言中一类特殊的数组越界!!
- HDU 1257 最少拦截系统(贪心)
- C语言 文件操作10--配置文件读写
- OJ里C++和G++的区别
- c++和G++的区别
- C/C++常量指针和指针常量的区别
- 《More Effective C++》读书笔记-技术(二)
- C++ 重载解析 知多少?
- C语言找素数
- C语言打印9*9乘法口诀表
- C++ 模板函数 知多少?
- c++第四次作业
- c++基础回顾
- c++第四次实验---继承和派生
- C++程序变量在内存中的分配问题
- 【AKOJ】1184-ASCII码排序(2)
- c/c++在windows下获取时间和计算时间差的几种方法总结
- C语言有参函数调用时参数间数据传递问题