有关数组下标为-1 的讨论(那个-1的道理是什么),该如何解决

有关数组下标为-1 的讨论(那个-1的道理是什么)sa_u32Length(void*memblock,sa_s32 sizeofUnit){sa_u32* or

有关数组下标为-1 的讨论(那个-1的道理是什么)
sa_u32Length(void*memblock,sa_s32 sizeofUnit)
{
sa_u32* original = (sa_u32*)memblock;
return original[-1]/sizeofUnit;
};

[解决办法]
比如
unsigned char myLstr[]={'\x03'/*长度*/,'1','2','3'};
unsigned char *mystr=myLstr[1];
那么
int L=(int)mystr[-1];//取mystr的长度