Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: C++
Expertise: All
Jun 26, 2000

Prefer Stringstream Objects to Strstream Objects

In pre-standard C++, the strstream family of classes was used as buffered stream classes. These classes are now considered deprecated; you should use the stringstream family of classes instead. For example, the following code that uses the deprecated ostrstream class:

ostrstream s; // deprecated
float f = 6.6777;
s<<f; //insert f into the stream
string st = s.str(); //copy into a string

should be rewritten as follows:

std::ostringstream s;
float f = 6.6777;
s<<f; //insert f into the stream
std::string st = s.str(); //copy into a string

The ostringstream class returns a string object rather than char *. In addition, it's declared in namespace std. As a rule, use istringstream and ostringstream instead of the deprecated istrstream and ostrstream classes.

Danny Kalev
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date