typedef struct 和 struct 创造结构体的区别
时间: 2024-08-27 13:03:08 浏览: 153
C_C++中typedef_struct和struct的用法
5星 · 资源好评率100%
`typedef struct` 是 C 语言中一种预处理指令,它允许我们给现有的结构体类型起一个新的名字,这主要是为了提供更易读、更直观的名称,使得程序中的代码更加清晰。例如:
```c
typedef struct {
int age;
char name[20];
} Person; // 使用typedef定义了一个名为Person的新类型
// 然后你可以直接使用Person而不是struct Person来声明变量
Person p1; // 类似于 struct Person p1;
```
而 `struct` 关键字本身就是用于创建结构体的,它定义了一组数据成员及其内存布局。两者的主要区别在于:
1. `typedef struct` 提供了别名,可以简化后续对复杂结构体类型的引用;
2. 如果没有使用 `typedef`,则需要明确地写出完整的结构体类型名,如 `struct` 前缀。
阅读全文