struct dataStruct { const char* s; int num; };
struct Final_struct { int n; dataStruct a[]; };
Run Code Online (Sandbox Code Playgroud)
现在,当我尝试按如下方式初始化Final_struct时,会出现问题:
const Final_struct Example[]= {
{100, { {"age", 20}, {"iq", 120}, {"bmi",26} } },
{100, { {"age", 36}, {"iq", 145}, {"bmi",22} }}
};
Run Code Online (Sandbox Code Playgroud)
它是交响代码,当我尝试编译时会给出编译错误:
Fields of the object can not have arrrays of size 0
有什么建议?
谢谢.
dataStruct a[]将struct的成员定义为size数组0.这几乎没用.您需要在定义中指定其大小,struct因为编译器需要struct事先知道整个大小.
或者,您可以简单地将字段声明为dataStruct *a,然后数组本身将不包含在struct.
| 归档时间: |
|
| 查看次数: |
212 次 |
| 最近记录: |