上述的特点如下代码表示:
1. 柔性数组写在结构体中,并且要求柔性数组前面必须还有至少一个成员变量;
2. sizeof计算这个带有柔性结构体大小时,柔性结构体大小不算在sizeof之内的;
3. 柔性数组时需要malloc去分配后才有大小的,下图红圈是仅仅计算除开柔性数组大小的字节数,红圈后面才是给柔性数组分配的内存大小。
注意下柔性数组的定义: 类型+数组,如 int a[] / int a[0],这两种表达都可以,不过有些编译器会对a[0]这种定义报错
上述的特点如下代码表示:
1. 柔性数组写在结构体中,并且要求柔性数组前面必须还有至少一个成员变量;
2. sizeof计算这个带有柔性结构体大小时,柔性结构体大小不算在sizeof之内的;
3. 柔性数组时需要malloc去分配后才有大小的,下图红圈是仅仅计算除开柔性数组大小的字节数,红圈后面才是给柔性数组分配的内存大小。
注意下柔性数组的定义: 类型+数组,如 int a[] / int a[0],这两种表达都可以,不过有些编译器会对a[0]这种定义报错