[问题] 静态阵列可调整大小?

楼主: lionheart60 (宅熊冗厚)   2014-11-25 23:45:20
如果这是蠢问题就请嘘爆我@@
开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
GCC
问题(Question):
有一个巢状结构如下述,请问那个records的阵列大小是可以调整的吗@@?
程式码(Code):(请善用置底文网页, 记得排版)
typedef struct{
time_t t;
double d;
}Value;
typedef struct{
int NumberOfRecords;
struct _Record{
char Name[64];
Value value;
}records[1];
}Message;
作者: wuliou (wuliou)   2014-11-25 23:59:00
records的的宣告在哪?
作者: azureblaze (AzureBlaze)   2014-11-26 00:04:00
为何不直接试试看?
作者: PoorLoser (废文制造机)   2014-11-26 00:05:00
可以啊, 填多少就有多少个 _Record不过小鲁习惯把 _Record 型态定义在外面
作者: wuliou (wuliou)   2014-11-26 00:10:00
啊 眼残了 歹势
作者: PoorLoser (废文制造机)   2014-11-26 00:30:00
不可以, 左边要是 pointer然后你宣告完产生的物件里面就占了那么大的空间用 malloc 做什么?不太懂欸, 对成员赋值的确是这样填, 不然也可以建立一个 _Record 把值都填好然后用 memcpy 整个塞进去若是初始化就要填固定资料的话可加上 packed方法就你提的, 改 records 阵列大小用指标但要用指标不如就改写成 linked list

Links booklink

Contact Us: admin [ a t ] ucptt.com