C中的机器人迷宫表示

emu*_*isa 2 c robotics

所以我想用C语言中的2D数组表示一个长度为5x4(行x列)的矩形迷宫.但是,我无法确定实际需要放入2D阵列的内容.

int a[5][4] = {
    {},
    {},
    {},
    {},
    {}, 
};
Run Code Online (Sandbox Code Playgroud)

这是2D数组的骨架,每行中将有4个值,我假设这些值中的每一个都是一个整数,它告诉我们迷宫中单元格的属性.我的问题是,这真的够了吗?单个值如何告诉机器人天气有3面墙,2面墙等

有人请赐教D:

迷宫

pmg*_*pmg 7

使用特定位来表示房间的特定属性

#define ROOM_WALL_ABOVE (1 << 0)
#define ROOM_WALL_LEFT  (1 << 1)
#define ROOM_WALL_BELOW (1 << 2)
#define ROOM_WALL_RIGHT (1 << 3)
#define ROOM_DOOR       (1 << 4)

int a[5][4] = {0};
a[0][0] = ROOM_WALL_ABOVE | ROOM_WALL_LEFT;

if (a[x][y] & ROOM_WALL_RIGHT) printf("Cannot walk right.\n");
Run Code Online (Sandbox Code Playgroud)