arrays - 如何初始化指向结构数组的指针
问题描述
#define X 10
#define Y 10
我的结构:
typedef struct Reservation {
char NAME[10];
int ID;
int N;
int RESERVE;
int POSX;
int POSY;
} Reservation;
我的变量声明:
struct Reservation* s[X][Y];
我正在寻找一种方法来初始化我的变量。
解决方案
它不是指向结构数组的指针。它是指向 struct 的数组 od 指针。
#define X 2
#define Y 2
typedef struct Reservation {
char NAME[10];
int ID;
int N;
int RESERVE;
int POSX;
int POSY;
} Reservation;
struct Reservation s1,s2,s3,s4;
struct Reservation a[X][Y] = {{{0,},{0,}},{{0,},{0,}}};
// array of pointers to struct
struct Reservation *s[X][Y] = {&s1, &s2, &s3, &s4};
// pointer to array of structs
struct Reservation (*sa)[X][Y] = &a;
推荐阅读
- ruby-on-rails - 用户和机器人的区别
- elasticsearch-5 - 奇怪的 kibana 错误 - 无效代码 - 缺少块尾
- unix - 将一根管道的输出连接到一个 FIFO 的输入
- angular - Ionic 4:'ion-slide' 不是已知元素
- c++ - 使用 OpenCV 打开 USB 相机
- python-3.x - scikit-learn 中的哪些估算器支持 `partial_fit` API?
- ios - 有没有办法阻止今天的 iOS 扩展在后台发送 API 请求?
- c - libssh 隧道回显输入
- webpack - 是否可以使用 webpack 从 es6 编译为 commonjs
- nginx - Nginx 在 keycloak 和本地微服务前