这个程序里面的sizeof的意思是什么???

来源:百度知道 编辑:UC知道 时间:2024/06/28 04:17:10
typedef struct task
{
UCHAR A;
UCHAR T;
ULONG L;
ULONG P;
UCHAR T;
void W;
}TASK_DATA;

TASK_DATA TaskDb[]={
{1, 4, 2, 250, 45, 0},
{0, 2, 2, 200, 32, 1}
};

void TP(void)
{
int i;
for(i=0;i<sizeof(TaskDb)/sizeof(TaskDb[0]);i++)
{
if(!TaskDb[i].A)
continue;
}
}

请教各位大大们,TP函数里面的i是小于多少呢?这个数值怎么来的?函数里面的两个sizeof分别是多少?我很是困惑!在这里谢谢了!!!
我明白12和6怎么来的了!谢谢Flycat1022

数组的长度 :)

例如 sizeof(TaskDb) 12
sizeof(TaskDb[0]) 应该是6

TaskDb[0] 就是{1, 4, 2, 250, 45, 0} 了
总共有 6个元素

TaskDb等于下属所有元素相加, 就是 12 了.

很奇怪的哈, 一般的语言, TaskDb的长度其实应该是2 :)