arrays - C为结构内的结构声明一个数组
问题描述
所以我有这样的事情:
struct cat{
int breed;
enum state status;
...
struct{
int catNumber;
...
} feederOperations[MAX_FEEDER];
}cats[MAX_CATS];
如果代码没有意义,请不要担心,我想知道的是我应该/如何声明内部结构的新一维数组?
解决方案
一旦你删除了内部结构的匿名并给它一个名字。
C 中的内部结构没有特殊的范围规则,这意味着 的范围与struct cat
的范围相同struct feederOp
。
struct cat{
int breed;
enum state status;
...
struct feederOp {
int catNumber;
...
} feederOperations[MAX_FEEDER];
}cats[MAX_CATS];
因此,您可以在任何需要的地方创建类型变量,struct feederOp
如下所示。
struct feederOp var1;
推荐阅读
- django - 如何使用一个应用程序中的 Django 模型连接到第二个应用程序的数据库副本?
- app-store - 上传我的应用程序时出错:App Sore Connect 操作错误
- android - 不同设备的布局 - 约束布局和最小宽度限定符
- php - 如何通过 curl post 将文件上传到 api
- javascript - 可能未处理的拒绝:-尝试将数据从 angularJS 传递到 spring MVC
- angular - 如何从动态传递的数据中选择复选框?
- linux - 在makefile中,如果文件不存在则创建一个空文件
- vuejs2 - 如何在 Vue.js webapp 中使用 dygraphs?
- for-loop - 如何在 bash 中更正 awk 命令中的“for 语句”
- python - 在父进程和子进程之间使用管道