在C語(yǔ)言中,可以使用struct
關(guān)鍵字來(lái)定義結(jié)構(gòu)體。結(jié)構(gòu)體定義的通用語(yǔ)法如下:
struct 結(jié)構(gòu)體名 {
數(shù)據(jù)類型1 成員變量1;
數(shù)據(jù)類型2 成員變量2;
// ...
數(shù)據(jù)類型n 成員變量n;
};
其中,結(jié)構(gòu)體名
是結(jié)構(gòu)體的名稱,可以根據(jù)需要自行命名。成員變量1
、成員變量2
、成員變量n
是結(jié)構(gòu)體的成員變量,可以根據(jù)需要定義多個(gè)成員變量,每個(gè)成員變量都有自己的數(shù)據(jù)類型。
例如,下面是一個(gè)定義學(xué)生結(jié)構(gòu)體的示例:
struct Student {
int id;
char name[20];
int age;
float score;
};
在定義結(jié)構(gòu)體之后,可以使用該結(jié)構(gòu)體來(lái)聲明結(jié)構(gòu)體變量。例如:
struct Student stu1;
struct Student stu2;
這樣就定義了兩個(gè)學(xué)生結(jié)構(gòu)體變量stu1
和stu2
,可以使用.
操作符來(lái)訪問(wèn)結(jié)構(gòu)體變量的成員變量,如stu1.id
、stu1.name
等,進(jìn)行賦值或取值操作。
另外,C語(yǔ)言還支持使用typedef
來(lái)給結(jié)構(gòu)體類型起別名,方便使用。例如:
typedef struct Student {
int id;
char name[20];
int age;
float score;
} Student;
這樣就可以直接使用Student
來(lái)聲明結(jié)構(gòu)體變量,而不需要再加上struct
關(guān)鍵字,如Student stu1;
。