我正在尝试为Windows 10上的C ++中的简单蛇游戏输出方向箭头,但是,使用此表作为参考:
我只得到控制台中的这个小问号:
我想输出符号16、17、30和31。我不是程序员,所以这可能是一些基本错误,但是有些符号确实起作用,而另一些符号会导致上面的那个符号。
一个小例子:
void showSnake() {
char snakeHead;
snakeHead = 31;
cout << snakeHead; //THIS SHOWS THE TINY QUESTION MARK
snakeHead = 62;
cout << snakeHead; //THIS SHOWS THE ">" SYMBOL
}
您应该使用Unicode,字符会有更多选择。
在https://en.wikipedia.org/wiki/List_of_Unicode_characters上,我发现此符号'▶'看起来与您要使用的符号相似。
其unicode值为U+25BA
,这意味着您可以在C ++中创建一个值为'\u25BA'
的字符。
但是实际上,该值将超出char
类型的范围,因此您必须使用宽字符(wchar
)才能完成工作:
#include <iostream>
#include <clocale>
int main() {
setlocale(LC_ALL, "");
std::wcout << L'u\25BA';
}
setlocale()行是在默认语言环境不支持非ACSII输出(我的机器上不支持它的情况下。)>