结构体与公用体
1.什么是结构体?
结构是 C 编程中另一种用户自定义的可用的数据类型,它允许您存储不同类型的数据项。,例如一个学生的信息就需要学号(字符串),姓名(字符串),年龄(整形)等等,这些数据类型都不同但是他们又是表示一个整体,要存在联系,那么我们就需要一个新的数据类型。
2.声明一个结构体
struct 结构体类型名
{
类型名 成员名;
类型名 成员名;
……
};
先声明结构体类型,再定义结构体变量名
声明结构体类型,不分配空间
定义结构体类型变量,就要分配内存空间
//申明一个结构体
struct book
{
char title[MAXTITL];//一个字符串表示的titile 题目 ;
char author[MAXAUTL];//一个字符串表示的author作者 ;
float value;//一个浮点型表示的value价格;
};//注意分号不能少,这也相当于一条语句;
3.结构体变量的初始化
和其它类型变量一样,对结构体变量可以在定义时指定初始值。
#include <stdio.h>
struct Books
{
char title[50];
char author[50];
char subject[100];
int book_id;
} book = {
"C 语言", "RUNOOB", "编程语言", 123456};
int main()
{
printf("title : %s\nauthor: %s\nsubject: %s\nbook_id: %d\n", book.title, book.author, book.subject, book.book_id);
}
输出结果
title : C 语言
author: RUNOOB
subject: 编程语言
book_id: 123456
4.访问结构成员
为了访问结构的成员,我们使用成员访问运算符(.)。成员访问运算符是结构变量名称和我们要访问的结构成员之间的一个句号。例如
结构体变量名.成员名;
您可以使用 struct 关键字来定义结构类型的变量。下面的实例演示了结构的用法:
#include <stdio.h>
typedef