这是我的结构:
struct Checker
{
short row;
short col;
unsigned short number;
short color;
};
现在,我还要制作另一个结构来代表棋盘:
struct Board
{
Checker checkers[2][13]; // Zeroth entry of 13 is not used.
Checker *grid[8][8]; // each entry holds Null or an address
// of an element in the checkers array
};
如果重要,检查员[0-1]代表哪一方,[1-12]是每件的唯一编号。
无论如何,我有一个8x8网格,要么指向NULL,要么是一个检查器。我想要做的是能够访问该检查器而不是通过其唯一ID(例如检查器[0] [5]),而是通过它在网格上的位置。
如何以这种方式访问数据成员?我试着总结一下:
宣布棋盘游戏。设置网格,以便我在[0][0]
处有一个检查器。这将是checkers[0][1]
。因此,我希望能够在不知道其ID的情况下打印检查器编号,而不是知道该特定检查器位于cout <<checkers[0][1].number
[0][0]
。
感谢。
答案 0 :(得分:3)
cout << grid[0][0]->number;
如果网格是指向Checker结构的二维指针数组,则grid [0] [0]是指向该位置(0,0)的Checker的指针。 ->
语法取消引用指针,然后访问number
字段。
如果我误解了你的问题或者我的回复失败了,请告诉我,我很乐意删除。晚了。 :)