北大荒麦芽有限公司:C语言结构体数组问题?

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 20:14:29
这段是从书上抄下来的:
struct num
{ int a, *b;};
int data[5]={100,200,300,400,500,};
struct num array[5]={1000,&data[0],2000,&data[1],3000,&data[2],4000,&data[3],5000,&data[4],};
main()
{ int i=0;
struct num value;
value=array[0];
......
其中:struct num array[5]这里的array[5]不是有5个元素吗?怎么初始化了那么多?把&data全算上,都有10个了。

"struct num"你注意到这个了吗?它定义了一个结构体包括一个整形变量和一个整形指针,所以array数组中当然每一个元素要包括两项了。当然得定义10个了。

没有错,一个元素包括一个整形数和一个整形指针,五乘以二就得十了

这里的ARRAY是结构数组,数组中的每一个元素都是一个结构,而每一个结构都包括一个整形数和一个整形指针

呵呵,楼主以后看程序要仔细了。