Why not store your world as a 2-dimensional array? Thus you could do something like this:
(note : In my example, i'm statically creating the array for simplicity, you can pretty easily convert this code to dynamically allocate it. I'm also pretending that there is a "LoadWorldFromFile()" function, that loads your world from a file into the array. So let's assume that the world is correctly put in the array after the second line.).
(I'm assuming that the variables playerX and playerY have the players position in the world).
char world[100][100];
int playerX, playerY;
LoadWorldFromFile(world);
....
//at this point in the code the player is attempting to move right, so check to make sure he can.
if(playerX<99)
if(world[playerX+1][playerY]!=CANNOT_BE_STEPPED_ON)
playerX++;
Then your map drawing code will handle moving the player.
See if that helps.
------------------
gameguru4@yahoo.com