首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

请大家帮小弟我看看这个结构体数组嵌套的异常是什么意思

2012-02-16 
请大家帮我看看这个结构体数组嵌套的错误是什么意思在写俄罗斯方块,这些是在头文件下定义的数据:是2个结构

请大家帮我看看这个结构体数组嵌套的错误是什么意思
在写俄罗斯方块,这些是在头文件下定义的数据:


是2个结构体的嵌套
///////////////// struct ///////////////////////

typedef struct FK_STATE_TYPE
{
int state[4][4];
}FK_STATE, *FK_STATE_PTR;

typedef struct FK_INFO_TYPE
{
int x,y; //position
FK_STATE fks[4];
}FK_INFO, *FK_INFO_PTR;

extern FK_INFO FK[7];

extern FK_STATE tubian1 = {0,1,0,0,
1,1,1,0,
0,0,0,0,
0,0,0,0};

extern FK_STATE tubian2={0,1,0,0,
0,1,1,0,
0,1,0,0,
0,0,0,0};

extern FK_STATE tubian3={0,0,0,0,
1,1,1,0,
0,1,0,0,
0,0,0,0};

extern FK_STATE tubian4={0,1,0,0,
1,1,0,0,
0,1,0,0,
0,0,0,0};


extern FK_STATE zhengfang1={1,1,0,0,
1,1,0,0,
0,0,0,0,
0,0,0,0};

extern FK_STATE zhengfang2={1,1,0,0,
1,1,0,0,
0,0,0,0,
0,0,0,0};

extern FK_STATE zhengfang3={1,1,0,0,
1,1,0,0,
0,0,0,0,
0,0,0,0};

extern FK_STATE zhengfang4={1,1,0,0,
1,1,0,0,
0,0,0,0,
0,0,0,0};

extern FK_STATE changtiao1={1,0,0,0,
1,0,0,0,
1,0,0,0,
1,0,0,0};

extern FK_STATE changtiao2={0,0,0,0,
1,1,1,1,
0,0,0,0,
0,0,0,0};

extern FK_STATE changtiao3={1,0,0,0,
1,0,0,0,
1,0,0,0,
1,0,0,0};
extern FK_STATE changtiao4={0,0,0,0,
1,1,1,1,
0,0,0,0,
0,0,0,0};

extern FK_STATE youwan1= {1,1,0,0,
1,0,0,0,
1,0,0,0,
0,0,0,0};

extern FK_STATE youwan2={1,1,1,0,
0,0,1,0,
0,0,0,0,
0,0,0,0};

extern FK_STATE youwan3={0,1,0,0,
0,1,0,0,
1,1,0,0,
0,0,0,0};

extern FK_STATE youwan4={1,0,0,0,
1,1,1,0,
0,0,0,0,
0,0,0,0};

extern FK_STATE zuowan1 = {1,1,0,0,
0,1,0,0,
0,1,0,0,
0,0,0,0};

extern FK_STATE zuowan2 = {0,0,1,0,
1,1,1,0,
0,0,0,0,
0,0,0,0};

extern FK_STATE zuowan3 = {1,0,0,0,
1,0,0,0,
1,1,0,0,
0,0,0,0};

extern FK_STATE zuowan4 = {1,1,1,0,
1,0,0,0,
0,0,0,0,
0,0,0,0};
 
extern FK_STATE youzhe1 = {1,0,0,0,
1,1,0,0,
0,1,0,0,
0,0,0,0};

extern FK_STATE youzhe2 = {0,1,1,0,
1,1,0,0,
0,0,0,0,
0,0,0,0};

extern FK_STATE youzhe3 = {1,0,0,0,
1,1,0,0,
0,1,0,0,
0,0,0,0};

extern FK_STATE youzhe4 = {0,1,1,0,
1,1,0,0,
0,0,0,0,
0,0,0,0};


extern FK_STATE zuozhe1 = {0,1,0,0,
1,1,0,0,
1,0,0,0,
0,0,0,0};

extern FK_STATE zuozhe2 = {1,1,0,0,
0,1,1,0,
0,0,0,0,
0,0,0,0};

extern FK_STATE zuozhe3 = {0,1,0,0,
1,1,0,0,
1,0,0,0,
0,0,0,0};

extern FK_STATE zuozhe4 = {1,1,0,0,
0,1,1,0,
0,0,0,0,
0,0,0,0};



int Init_Block()
{

FK[0].x = 3;
FK[0].y = 0;
FK[0].fks[0] = tubian1;
FK[0].fks[1] = tubian2;
FK[0].fks[2] = tubian3;
FK[0].fks[3] = tubian4;

FK[1].x = 3;
FK[1].y = 0;
FK[1].fks[0] = changtiao1;
FK[1].fks[1] = changtiao2;
FK[1].fks[2] = changtiao3;
FK[1].fks[3] = changtiao4;

FK[2].x = 3;
FK[2].y = 0;


FK[2].fks[0] = zhengfang1;
FK[2].fks[1] = zhengfang2;
FK[2].fks[2] = zhengfang3;
FK[2].fks[3] = zhengfang4;

FK[3].x = 3;
FK[3].y = 0;
FK[3].fks[0] = youwan1;
FK[3].fks[1] = youwan2;
FK[3].fks[2] = youwan2;
FK[3].fks[3] = youwan2;

FK[4].x = 3;
FK[4].y = 0;
FK[4].fks[0] = zuowan1;
FK[4].fks[1] = zuowan2;
FK[4].fks[2] = zuowan3;
FK[4].fks[3] = zuowan4;

FK[5].x = 3;
FK[5].y = 0;
FK[5].fks[0] = youzhe1;
FK[5].fks[1] = youzhe2;
FK[5].fks[2] = youzhe3;
FK[5].fks[3] = youzhe4;

FK[6].x = 3;
FK[6].y = 0;
FK[6].fks[0] = zuozhe1;
FK[6].fks[1] = zuozhe2;
FK[6].fks[2] = zuozhe3;
FK[6].fks[3] = zuozhe4;

return 1;
}


错误语句是:
Compiling...
njde.cpp
Linking...
njde.obj : error LNK2001: unresolved external symbol "struct FK_INFO_TYPE * FK" (?FK@@3PAUFK_INFO_TYPE@@A)
Debug/bjse.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

bjse.exe - 2 error(s), 0 warning(s)


[解决办法]
extern FK_INFO FK[7]; 去掉extern
[解决办法]
extern FK_INFO FK[7];
表示声明了一个FK_INFO类型的数组,名称为FK,但由于是extern且没有初始化,所以在这里仅仅只是声明,没有定义

热点排行