c - “typedef char A[max_size]”是什么意思?
问题描述
我有这部分代码,但我不明白第一个 typedef 是如何工作的,以及当我们在结构中使用它时会发生什么。
#define MAX_BLOCKEDADDRESS_SIZE 256
typedef char BlockedAddress[MAX_BLOCKEDADDRESS_SIZE];
typedef struct Blocked {
int capacity;
int length;
BlockedAddress *mailAddress;
} Blocked;
解决方案
BlockedAddress
是一个用户定义的类型,它是一个 256char
数组。
#define MAX_BLOCKEDADDRESS_SIZE 256
typedef char BlockedAddress[MAX_BLOCKEDADDRESS_SIZE];
Blocked
是用户定义的类型,astruct
包含 2 个int
和一个指针成员。
typedef struct Blocked {
int capacity;
int length;
BlockedAddress *mailAddress;
} Blocked;
该成员mailAddress
是指向 的指针BlockedAddress
。
mailAddress 作为指向 char 数组 256 的指针
推荐阅读
- reactjs - 如何根据条件在 React 中应用 CSS 样式并将其与另一个类合并?
- r - 使用 R 进行 Web 抓取,显示 Javascript 已禁用的消息
- ios - 如何在 Xcode 9.3 中更改包标识符
- android - 是否可以降级“Google Keep”应用程序?
- python - 将数据写入 CSV 文件
- makefile - makefile 将对象扁平化到一个目录中
- python-3.x - pynput 键盘侦听器未检测到 Mac OS X 上的键
- angular - 由于 dist 文件夹中的文件丢失,ng-package 捆绑失败
- javascript - Javascript 不适用于 ie 浏览器和 ff
- metal - 想要放弃 MTKView.currentRenderPassDescriptor