struct 和 typedef struct 用法
时间: 2023-09-05 13:12:24 浏览: 116
struct 和 typedef struct 都是用于定义结构体的关键字,但它们在语法和用法上有一些区别。
1. 使用 struct 关键字定义结构体:
```
struct Student {
int id;
char name[20];
int age;
};
```
上述代码使用 struct 关键字定义了一个名为 Student 的结构体,包含三个成员变量:id、name 和 age。我们可以使用 struct Student 来声明这个结构体类型的变量,例如:
```
struct Student student1;
```
使用 struct 关键字定义结构体时,每次声明变量都需要加上 struct 关键字,例如 struct Student student1。这样可以明确地表示变量的类型是一个结构体。
2. 使用 typedef struct 定义结构体的别名:
```
typedef struct {
int id;
char name[20];
int age;
} Student;
```
上述代码使用 typedef struct 定义了一个匿名的结构体,并给它取了一个别名 Student。这样,我们可以直接使用 Student 来声明结构体类型的变量,例如:
```
Student student1;
```
使用 typedef struct 定义结构体时,我们可以直接使用新的别名来声明变量,无需再加上 struct 关键字。这样可以简化代码,并使得代码更加清晰和易读。
总结来说,struct 关键字用于定义结构体,而 typedef struct 则可以定义结构体的别名。typedef struct 可以使代码更加简洁,而且可以提高代码的可读性。
阅读全文