我有一个char数组的结构,定义如下:
struct SD_Data {
char time[8];
char vac[4];
char vdc1[4];
char vdc2[4];
char freq1[4];
char freq2[4];
char freq3[4];
char error_status[4];
char run_status[10]; };
struct SD_Data sdData;
// data is put into struct here...
我想在循环中使用一个与每个数组的大小相对应的变量。
通常我可以使用:
size = sizeof(sdData.time);
size = sizeof(sdData.vac);
etc
有没有办法用指针代替名称,并在获取每个数组的大小时增加指针?
我尝试通过定义一个指向strut起始位置的指针,然后获取所引用指针的大小,但仅给出指针的大小
int* numPtr = (int*)&sdData;
size = sizeof(*numPtr );
谢谢。