Подскажите почему не отображаются asci символы в консоли
Я пробую сделать простенькую игру на с++ , мне нужно изобразить на карте главного героя , я выбираю 1 или 2 по таблице asci , но вместо лица у меня просто квадратик с вопросом
#include <iostream>
#include <ctime>
#include <windows.h>
#include <conio.h>
#include <ctype.h>
using namespace std;
//Game settings
const int rows = 10;
const int columns = 15;
const unsigned char SymbolHero = 1;
const unsigned char SymbolWall = 177;
const unsigned char SymbolBox = 254;
const unsigned char SymbolExit = 178;
const unsigned char LevelData0[rows][columns + 1] = {
"#####2#########",
"# #",
"# X ### X # #" ,
"#X X X # X #",
"# X 1 # # #",
"## ## # # X#",
"# X XX #X #",
"#XXX # # X ##",
"#1 X # X X #",
"###############"
};
//Logics variables
bool isGameActive = true;
unsigned char LevelData[rows][columns];
int HeroRow = 0;
int HeroColumn = 0;
//Functions
void SystemSetup()
{
srand(time(0));
}
void Initialise()
{
for (int r = 0; r < rows; r++)
{
for (int c = 0; c < columns; c++)
{
unsigned char symbol = LevelData0[r][c];
switch (symbol)
{
//Wall
case '#':
{
LevelData[r][c] = SymbolWall;
break;
}
//Hero
case '1':
{
LevelData[r][c] = SymbolHero;
//Catch Hero position
HeroRow = r;
HeroColumn = c;
break;
}
//Exit
case '2':
{
LevelData[r][c] = SymbolExit;
break;
}
//Box
case 'X':
LevelData[r][c] = SymbolBox;
break;
//Other symbols(like spaces)
default:
{
}
}
}
}
}
void Render()
{
system("cls");
printf("\n\n\t");
for (int r = 0; r < rows; r++)
{
for (int c = 0; c < columns; c++)
{
unsigned char symbol = LevelData[r][c];
printf("%c", symbol);
}
printf("\n\t");
}
}
void Update()
{
unsigned char inputChar = _getch();
}
void Shutdown()
{
system("cls");
printf("Press any key to continue...");
_getch();
}
int main()
{
SystemSetup();
Initialise();
do
{
Render();
Update();
} while (isGameActive);
Shutdown();
return 0;
}