c - 嵌套二维结构数组的大小

标签 c arrays struct

我有以下结构,其中**座位成为顾客的二维数组。我想在将顾客安置在座位之前对此进行边界检查。 具体来说,如果座位是 2x2,并且我想知道如何检测合法插入并捕获出界;

theatre_seating *t;
t->seating[0][0]=some_patron; // how to know this is ok?

还有那个

t->seating[3][4]=some_patron; // how to know this is not?

结构。

struct patron {
    char last_name[30];
    char first_name[30];
};
struct theatre_seating {
    struct patron **seating;
};

最佳答案

C 指针没有任何内置方法来跟踪它们所指向内容的大小。程序员(即您)必须实现某种存储方式。一种方法是将 rowsseats_per_row 变量添加到 theatre_seating 结构中,然后在使用时检查它们。

关于c - 嵌套二维结构数组的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52195013/

相关文章:

c - typedef 和 struct 的语法错误?

c - 如何在 libcurl 中使用 CURLINFO_PRIVATE 访问结构?

c - 指针比较与字符串比较 strcmp 的性能

java - 俄罗斯方 block 的 vector 或 Java 数组?

c - typedef 在同一结构上使用两次

c# - 创建 Array.ReturnLength() 扩展方法?

arrays - 给定字符数组,一次找到第k个非重复字符

c - 如何在回溯中找到所有可能的解决方案

c - 在 while 循环中重新扫描并分配变量

c - 如何从标准输入打印行?