wstring怎么用

// to_wstring example
#include <iostream>   // std::wcout
#include <string>     // std::wstring, std::to_wstring

int main ()
{
  std::wstring pi = L"pi is 测试";
  std::wstring perfect = L" is a perfect number 非常";
  std::wcout << pi << L'\n';
  std::wcout << perfect << L'\n';
  return 0;
}

以上程序,只输出了pi is, 后面全没了。该怎么输出呢?

Windows Visual Studio C++

其实,我也不是非要用wstring,用string也行。比如有一段中英文混合的字符串,我要把其中的中文检测出来,单独处理,找了程序算法: 检测每个字节是否大于127,如果大于127则和下一字节一起构成中文输出.

但是,运行结果不对,中文没有输出。

阅读 3.3k
1 个回答

你需要先设置区域为中文

std::wcout.imbue(std::locale("chs"));
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进