工作中遇到个问题,要对结构体数组进行初始化,编译环境是VS2010,语言是C++。

结构体定义如下:

typedef struct test{
int ID;
TCHAR name[100];
} People;

错误初始化代码如下:

People GA[2]={{1,_T("zhang san")},{2,_T("li si")}};

编译通过,但执行时出现错误:


多方查找原因后,最终得出正确初始化方法应该为:

People GA[2];

GA[0].ID = 1; strcpy(GA[0].name,_T("zhang san"));

GA[1].ID = 2; strcpy(GA[1].name,_T("li si"));

问题解决!但不知道原因,以后有机会再补上吧~

posted on 2012-02-20 13:30  槐米槐芽  阅读(1027)  评论(2编辑  收藏  举报