il giocatore in realtà non esiste: cioè l'unico dato che ti devi salvare a riguardo è la sua posizione.
puoi fare una cosa simile:
codice:
char Campo[50][50];
struct Giocatore{
int positionX;
int positionY;
}

Edit
rileggendo bene non ti devi salvare solo la posizione: al fine di fare poi algoritmi più generici potrebbe anche essere comodo salvarti la direzione in cui vuole tirare, quindi potresti anche fare una cosa così
codice:
char Campo[50][50];
enum Facing
{
    unset=0,
    up =1,
    rightUp = 2,
    right = 3,
    down =4,
    downLeft = 5,
    left = 6,
    leftUp = 7
};

struct Giocatore
{
    int posX;
    int posY;
    Facing currFacing;
};