在尝试用 C 语言编译 Maze 生成器/求解器时,如 Visual Studio 2010 中的 rosettacode 中存在的那样,我在编译过程中遇到了问题。
下一行
# define SPC " "
wchar_t glyph[] = L""SPC"│││─┘┐┤─└┌├─┴┬┼"SPC"┆┆┆┄╯╮ ┄╰╭ ┄";
正在抛出错误
1>d:projectsmaze_cppmaze_cppmain.cpp(14): error C2308: concatenating mismatched strings
1> Concatenating wide "" with narrow "?????? ??? ?"
考虑到我对Unicode的有限了解,以及对MSDN中错误的不友好描述,我对这个问题以及如何解决它感到困惑
您需要
转义宽字符串文字中的"
s:
wchar_t glyph[] = L""SPC"¦¦¦-++¦-+++---+"SPC"?????? ??? ?";
编辑:
我错过了SPC
宏(正如Luchian和jrok已经发布的那样):
#define SPC L" "
wchar_t glyph[] = L"" SPC L"¦¦¦-++¦-+++---+" SPC L"?????? ??? ?";