在确定一个数组中的元素数量时,我遇到了一些问题。 例如,我得到以下代码:
typedef struct
{
char b[100];
int c;
}abc;
typedef struct
{
char qwe[50];
abc *poi;
}def;
abc xyz[] = {
{"xyz", 10},
{"ijk", 20},
{"gdf", 30},
{"hfg", 40}
};
abc uio[] = {
{"cde", 50},
{"ghi", 60},
{"hbc", 70}
};
def mnb[] = {
{"kio", xyz},
{"mkl", uio}
};
我知道我可以像这样确定数组mnb
中的元素数量:
int count_mnb = sizeof(mnb) / sizeof(mnb[0]);
但是如何确定xyz
中的元素数量?我想将xyz
用作mnb
第一个元素的一部分,而不仅仅是将mnb
替换为xzy
。像这样:
int count_xyz = sizeof(*mnb[0].poi) / sizeof();
但是我不知道该怎么做。