结构体定义如下:
typedef int elemtype;
typedef struct
{
elemtype *elem;
int length;
int listsize;
}sqlist;
涉及elem的使用如下:
for(int i=0;i<=len-1;i++)
{
scanf("%d",&l.elem[i]);
}
l.length=len;
printf("建立顺序表为: \n");
for(int i=0;i<=len-1;i++)
{
printf("%d ",l.elem[i]);
}
printf("\n顺序表一共%d个元素。\n",l.length);
}
elem是什么类型?如果是指针,指针可以像数组一样用吗?而且也没指定数组大小啊。
而且定义时必须加*号,否则出错,为什么?
还有一种情况,定义了一个结构体类型qtype,定义变量时是 qstpe *s;为什么呢?结构体类型也可以是指针?而使用时,s又不会像第一个elem一样是数组。
******************************************请注意:*************************************************
!!!这些程序都是正确的,可以运行,是从已经编好的程序里截取的。就是不明白为什么这样定义和使用。!!!
******************************************************************************************************