c - 我如何检查结构是否包含任何数据,因为我正在循环传递它?
问题描述
我正在尝试遍历已经为它们动态分配内存的二维结构数组,并识别任何没有来自用户输入的数据的结构。换句话说,我要求用户选择带有数组的特定点来存储他们的数据,然后我想遍历数组,打印其中的所有内容,并为没有保存数据的点显示 EMPTY。
当我在循环中传递它时,如何确定结构是否包含数据?
typedef struct item {
char name[20];
int quantity;
} item;
struct item **shelves = (item **)malloc(num_rows * sizeof(item *));
for (i = 0; i < num_rows; i++) {
shelves[i] = (item *)malloc(num_cols * sizeof(item));
}
for (int i = 0; i < num_rows; i++) {
for (int j = 0; j < num_cols; j++) {
???
}
}
解决方案
添加一个标志来标记使用/空结构。
自 C99 以来,有使用 #include 的 bool 类型
推荐阅读
- c# - WPF UniformGrid 动态内容
- javascript - react-native如何分配多个.replace()作为变量?
- r - 在 R 中将数据帧转换为 TS
- ios - 在 DUNS 号码查找中显示组织列表,但这不是我的
- jbpm - variableScopes 只能解析变量名:JBPM7.32 中的 null
- list - 将文本列表转换为字典?
- java - 如何在java中点的形状S中找到最长的边(从一个点到另一个点的距离)?
- mongodb - 在 MongoDB 中,如何获取(联合)具有多层嵌套/嵌入文档的文档中的所有属性
- android - 当前位置未显示在我的 android 应用程序中
- java - 如何将csrf令牌从android发布到spring?