我在 C 中有一个结构,最后有一些无法解码的声明
struct Student
{
int roll;
char name;
int age;
};
extern struct Student dev[];
最后一条语句在C中是什么意思?
extern struct Student dev[];
告诉编译器这dev
是一个类型的数组,struct Student
它是在其他地方定义的(其他翻译单元)。
这意味着dev[]
没有在这个 C/object 文件中声明,而是在另一个文件中声明。您必须将该其他对象链接到您的二进制文件才能使用该变量。
struct students
{
int num;
char name[100];
char dept[100];
} extern struct students student[];
student[] 是结构体数组。它用于访问结构体成员,如 num、name、dept。
诠释 j=100;
#include<stdio.h>
main(){
for(i=0;i<j;i++)
{
scanf("%d",&student[i].num);
scanf("%s",student[i].name);
scanf("%s",student[i].dept);
}
for(i=0;i<j;i++)
{
printf("%d\n",student[i].num);
printf("%s\n",student[i].name);
printf("%s\n",student[i].dept);
}
}
用于访问结构体成员的100条记录