在字符串中附加DegreeSymbol

时间:2014-11-05 05:51:26

标签: c++ utf-8

我想在字符串中附加度数符号,例如55.66°,所以我使用      std::wostringstream stream; stream<<"55.66"<<"°";

然后我将它转换为像stream.str()一样的wstring 我获得的输出是55.66°

添加额外的A.我如何删除它? 我也尝试使用流&lt;&lt;“&lt;”55.66“&lt;”\ u00B0“

1 个答案:

答案 0 :(得分:1)

首先,您无法将宽字符串转换为窄C字符串。转换为const char *无效,您必须将其转换为const wchar_t *

现在,希望你没有这样做:

cstr = stream.str().c_str();

因为str()返回一个临时字符串对象;语句完成后,它被释放,并且其c_str()指针已失效。所以 if 这样做,你最好在独立变量中提取流的字符串。