ostrstream类流
/*ostrstream流可以实现将一个二进制数转换成串的字符存入在字符数组对象中。*/
#include<iostream.h>
#include<strstrea.h>
#include<string.h>
void main()
{
const int LENGTH=80;
char buffer[LENGTH];
double dnum=-1234.512356;
ostrstream sout(buffer,sizeof(buffer));
sout.setf(ios::fixed|ios::showpoint|ios::showpos);
sout<<dnum<<'\0';
cout<<buffer<<endl;
char *p=sout.str();
cout<<p<<endl;
cout<<sout.pcount()<<endl;
}
/*运行结果
-1234.512356
-1234.512356
13
*/
istrstream类流
/*istrstream流可以实现将一个字符串的数字字符转换成二进制形式存入在某种类型的对象中。
istrstream流为流对象提供了两种构造函数,它们的原型分别是:
istrstream ::istrstream (char *s)
istrstream ::istrstream (char *s,int n)
*/
#include<iostream.h>
#include<strstrea.h>
void main()
{
const int LENGTH=80;
char buffer[LENGTH]="65 43.21";
char buffer2[LENGTH]="543.21";
double d;
int i;
istrstream sin(buffer);
sin>>i>>d;
cout<<i<<" "<<d<<endl;
istrstream sin2(buffer2,3);
sin2>>d;
cout<<d<<endl;
}
/* 运行结果:
65 43.21
543
*/