首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从字符数组转换为字符串

从字符数组转换为字符串
EN

Stack Overflow用户
提问于 2015-06-17 04:24:31
回答 1查看 73关注 0票数 0

我想把一个字符数组转换成这样的宽字符串

代码语言:javascript
复制
std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
std::wstring ws=converter.from_bytes({99,108,105,235,110,116}).

但这不管用。

代码语言:javascript
复制
`235` is an invalid narrowing conversion from int to char:constant character doesn't fit in destination type.
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-17 04:41:38

对于您的代码来说,唯一可行的from_bytes重载就是使用const byte_string&的版本。您没有使用自定义分配器,所以byte_stringstd::basic_string<char, std::char_traits<char>, std::allocator<char>>,a.k.a。std::string

std::string有一个initalizer_list<char>构造函数;但是,您平台上的char是签名的,不能表示值235,这使得从235char的隐式转换是一种缩小转换,在大括号初始化程序列表的顶层不允许这种转换。

使用char(235)显式地将其转换为char

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30882316

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档