我目前正在C中创建一个动态数量的Ncurses窗口的数组。
然而,窗户是一种不完整的类型"所以它们的大小可以变化。如果使用calloc
调用sizeof(WINDOW)
时崩溃,如何创建可变大小的窗口数组?
答案 0 :(得分:1)
Windows由声明为
WINDOW *
的变量引用(来自ncurses联机帮助页)
对于Windows阵列也是如此。您需要使用WINDOW*
的数组;即使WINDOW
是不完整类型,WINDOW*
也是完整类型,所以
WINDOW* windows[NWINDOWS];
很好。
对于动态数组,您需要WINDOW** windows;
。