结构体指针成员变量的赋值问题
因为建模需要,现在开始用上C语言了,这个方面还是个菜鸟,所以有个问题求教大家程序的目的是要把文本中得内容放到一个结构体数组中。
例如:一个test.txt 有以下内容,
China is good!
我编写了以下程序
头文件:
struct reaction
{
char *rea;
int rea_num;
};
源文件:
int main()
{
int temp;
struct reaction **reaction_group;
reaction_group = (struct reaction **)malloc(2*sizeof(struct reaction));//分配内存
for(temp = 0; temp < 2; temp++)
{
reaction_group[temp] = (struct reaction *)malloc(sizeof(struct reaction));
}
FILE *fp;
fp = fopen("test.txt","r");
fscanf(fp,"%s",reaction_group[0]->rea);
printf("%s",reaction_group[0]->rea);
system("pause");
return 0;
}
按理来说reaction_group[0]->rea就是表示这个指针的地址,赋值后应该是“China”但是为什么无法赋值呢?求教啊!
[ 本帖最后由 whypenghui 于 2011-11-14 00:31 编辑 ]