例如,现在我定义了:struct stMystruct
{
char a[20];
char b[20];
int c;
}然后我想把这个 STRUCT 做成是数组型的,可以吗 ?
就是做 stMystruct[0].c = 100 这一种的操作,怎么样定义呢? HOW ?谢谢谢 ~~~~~~~~~~
{
char a[20];
char b[20];
int c;
}然后我想把这个 STRUCT 做成是数组型的,可以吗 ?
就是做 stMystruct[0].c = 100 这一种的操作,怎么样定义呢? HOW ?谢谢谢 ~~~~~~~~~~
struct stu
{
int num;
char *name;
char sex;
float score;
}boy[5]={
{101,"Li ping",'M',45},
{102,"Zhang ping",'M',62.5},
{103,"He fang",'F',92.5},
{104,"Cheng ling",'F',87},
{105,"Wang ming",'M',58},
};
main()
{
int i,c=0;
float ave,s=0;
for(i=0;i<5;i++)
{
s+=boy[i].score;
if(boy[i].score<60) c+=1;
}
printf("s=%f\n",s);
ave=s/5;
printf("average=%f\ncount=%d\n",ave,c);
}
struct stMystruct
{
char a[20];
char b[20];
int c;
} st[5];
struct stMystruct
{
char a[20];
char b[20];
int c;
}stMy;
使用
stMy stTemp[10];
{
char a[20];
char b[20];
int c;
};struct stMystruct temp[10];
temp[0].c = 100;或者typedef struct stMystruct
{
char a[20];
char b[20];
int c;
}_stMystruct;_stMystruct temp[10];
temp[0].c = 10;
结构体数组是很基本的用法,通常可以这样比较好:
typedef struct
{
char a[20];
char b[20];
int c;
}MYSTRUCT;
MYSTRUCT myArray[5];