char32_t c = U'▁'
可以在GCC和Clang下工作,但在MSVC下失败,错误为
error C2015: too many characters in constant
U'\u2581'
可以工作,但这是一个编译器错误吗?微软的String and character literals文档似乎没有说它不受支持,但也许我错过了一些相关的东西。
char32_t c = U'▁'
可以在GCC和Clang下工作,但在MSVC下失败,错误为
error C2015: too many characters in constant
U'\u2581'
可以工作,但这是一个编译器错误吗?微软的String and character literals文档似乎没有说它不受支持,但也许我错过了一些相关的东西。
1条答案
按热度按时间busg9geu1#
@remy-lebeau和@mark-tolonen是正确的。我遇到了这个问题,我需要添加
/utf-8
编译器标志。我的源文件使用的是utf-8。我使用的是VS 2022(17.4.4)。参见https://learn.microsoft.com/en-us/cpp/build/reference/utf-8-set-source-and-executable-character-sets-to-utf-8?view=msvc-170