tongasheng 发表于 2011-4-13 10:41:52

CC78K0 error E0516: Zero sized structure

我定义了以下两个结构体:
struct stWordAddress{
                           ushort WriteAddress;
                           ucharWriteBank;
                        }WordAddr;
               
struct stWordWriteData{
                           ucharWordNumber;
                           ucharWriteDataBuffer;
                           ushort WriteAddressData;
                           ucharWriteBankData;
                }WordWriteData;

用于以下函数:
uchar FlashWordWrite_Call(struct stWordAddress *ptr1,ushort DataBufferAddress,struct stWordWriteData *ptr2)
{
        ucharStatus;
        ushort i;
        uchar*p;
       
        p = (uchar*)DataBufferAddress;
       
        for(i=0;i<=4*(ptr2->WordNumber)-1;i++)
        {
                *p = ptr2->WriteDataBuffer;
                p++;
        }//write in address and bank is set to the write_inite address
       
        ptr1->WriteAddress = ptr2->WriteAddressData;
        ptr1->WriteBank = ptr2->WriteBankData;
}

编译后出现的错误:
call.c(62) : CC78K0 error E0516: Zero sized structure 'ptr2'
call.c(62) : CC78K0 error E0533: Invalid left-or-right operand : '*'
call.c(62) : CC78K0 error E0520: Illegal use of pointer
call.c(64) : CC78K0 error E0516: Zero sized structure 'ptr2'
call.c(64) : CC78K0 error E0402: Incompatible type conversion
call.c(68) : CC78K0 error E0516: Zero sized structure 'ptr1'
call.c(68) : CC78K0 error E0516: Zero sized structure 'ptr2'
call.c(69) : CC78K0 error E0516: Zero sized structure 'ptr1'
call.c(69) : CC78K0 error E0516: Zero sized structure 'ptr2'
call.c(74) : CC78K0 error E0516: Zero sized structure 'ptr2'

请教各位高手,这些错误怎么解决啊,我看不出来哪里错了啊?多谢,十分感谢
页: [1]
查看完整版本: CC78K0 error E0516: Zero sized structure