CString、std::string格式化字符串
2008-12-12 14:30
302 查看
=============================CString==================================
当有多个字串时,比如
int n1 = 5;
int n2 = 10;
char sz1[] = "abcdefg";
char sz2[] = "hijklmn";
用std中的string如何写出最简单的代码得到MFC中CString如下效果:
CString s;
s.Format(" result: %d + %d = %d/n sz1: %s/n sz2: %s/n", n1, n2, n1+n2, sz1, sz2 );
===========================std::string==================================
int n1 = 5;
int n2 = 10;
char sz1[] = "abcdefg";
char sz2[] = "hijklmn";
std::ostringstream ostr; // include <sstream>
ostr << "result:" << n1 << "+" << n2 << "=" << n1+n2
<< "/nsz1:" << sz1
<< "/nsz2:" << sz2;
//std::cout << ostr.str().c_str() << std::endl;
std::string s = ostr.str();
附加说明
在C++有两种
一个是在<sstream>另一个是<strstream>它们实现的东西基本一样, 区别是前者为前标准.
而前标准里ostringstream::str()是返回std::string的.
<strstream>包含
class strstreambuf;
class istrstream;
class ostrstream;
class strstream;
它们是基于char*编写的
<sstream>
class istringstream;
class ostreamstream;
class stringbuf;
class stringstream;
class ...
....
它们是基于std::string编写的.
===============char * 有sprintf====================
当有多个字串时,比如
int n1 = 5;
int n2 = 10;
char sz1[] = "abcdefg";
char sz2[] = "hijklmn";
用std中的string如何写出最简单的代码得到MFC中CString如下效果:
CString s;
s.Format(" result: %d + %d = %d/n sz1: %s/n sz2: %s/n", n1, n2, n1+n2, sz1, sz2 );
===========================std::string==================================
int n1 = 5;
int n2 = 10;
char sz1[] = "abcdefg";
char sz2[] = "hijklmn";
std::ostringstream ostr; // include <sstream>
ostr << "result:" << n1 << "+" << n2 << "=" << n1+n2
<< "/nsz1:" << sz1
<< "/nsz2:" << sz2;
//std::cout << ostr.str().c_str() << std::endl;
std::string s = ostr.str();
附加说明
在C++有两种
一个是在<sstream>另一个是<strstream>它们实现的东西基本一样, 区别是前者为前标准.
而前标准里ostringstream::str()是返回std::string的.
<strstream>包含
class strstreambuf;
class istrstream;
class ostrstream;
class strstream;
它们是基于char*编写的
<sstream>
class istringstream;
class ostreamstream;
class stringbuf;
class stringstream;
class ...
....
它们是基于std::string编写的.
===============char * 有sprintf====================
相关文章推荐
- CString、std::string格式化字符串
- std::stringstream只适合作字符串格式化
- 标准字符串std::string和System::String, CString之间的转换
- 标准字符串std::string和System::String, CString之间的转换
- std::string与CString字符串的相互转换
- 完成一程序演示字符数组、C风格字符串、std::string和MFC中的Cstring类型之间的相互转换
- std::string格式化字符串的问题
- 标准字符串std::string和System::String, CString之间的转换
- 标准字符串std::string和System::String, CString之间的转换
- 标准字符串std::string和System::String, CString之间的转换
- C++ 中涉及到的 字符串转换 std::string CString char* Int 等
- 标准字符串std::string和System::String, CString之间的转换
- JAVA字符串格式化-String.format()的使用
- Java系列: JAVA字符串格式化-String.format()的使用(zz)
- C# 格式化字符串几种方式总结 String.Format
- JAVA字符串格式化-String.format()的使用
- JAVA字符串格式化-String.format()的使用
- std::string和BSTR和CString之间的转化
- MFC中CString与std::string之间的转换问题 涉及LPTSTR
- JAVA字符串格式化-String.format()的使用