ok....
Why wont kbhit() work...
Code:
#include <iostream.h>
#include <conio.h>
char grid[3][3] = {
{'*','*','*'},
{'*','*','*'},
{'*','*','*'}};
char key;
int x;
int y;
int count = 0;
char changex;
char changey;
void makegrid();
void plyrmve();
void change_grid(const char changex, const char changey);
int main()
{
grid[0][0] = 'X';
for(count = 0; count < 9; count++){
makegrid();
plyrmve();
clrscr();
}
getch();
return 0;
}
void makegrid()
{
cout<<grid[0][0]<<grid[0][1]<<grid[0][2]<<endl
<<grid[1][0]<<grid[1][1]<<grid[1][2]<<endl
<<grid[2][0]<<grid[2][1]<<grid[2][2]<<endl;
}
void change_grid(const char changex, const char changey)
{
grid[x][y] = ' ';
if ( changex == '+' ) x++;
else if ( changex == '-') x--;
else if ( changey == '+') y++;
else if ( changey == '-') y--;
grid[x][y] = 'X';
}
void plyrmve()
{
if ( kbhit() ){
key = getch();
switch( key )
{
case 72: change_grid ( '-', 0 ); break;
case 80: change_grid ( '+', 0 ); break;
case 75: change_grid ( 0, '-' ); break;
case 77: change_grid ( 0, '+' ); break;
default: cout<<"Error";
}
}
}
it says may lose significant digits...