我在C.做了一个项目.我是C的新手.在项目中,我有一个这样的结构:
struct room_t{
char* name;
struct room_t* north;
struct room_t* east;
struct room_t* south;
struct room_t* west;
}
Run Code Online (Sandbox Code Playgroud)
声明为: struct room_t room[3]
如果我想在北方访问该名称,我这样做:room[0].north[0]->name
我对吗 ?或应该是room[0].north[0].name
你的第一个猜测几乎是正确的,但它应该是room[0].north->name因为你没有为变量声明一个数组north.
一般情况下,您应该尝试一下,然后看看编译器和您的程序输出的内容尽可能地自己学习.;)