定义个BYTE数组 BYTE A[100],但实际中不一定用完,我怎么能获得它的有效长度?
BYTE a[100];
a[0]=0x00; a[1]=0x02; .... //这里的数据长度是不定的,总之是在100以内
我怎么知道它的实际长度是多少呢?
[解决办法]
TBytes a;
a.Length = 100;
a[0]=0x00; a[1]=0x02; ... a[n]=x; //
a.Length = n; // 再把他设成实际长度
求长度:int Len = a.Length;
[解决办法]
你用c++的话,可以考虑VECTOR
[解决办法]
就算没用完它的长度还是100,你想问的是有效数据有多长吗,那要去问写入数据的人.
[解决办法]
可以把全部数组初始化为一个特殊的数x,这个数x最好是整个数组的成员都不会有的值,然后给数组赋值,在判断数组成员个数的时候,做个判断试试:
for(char i=0;i<100;i++)
{
if(a[i]!=x)
{
Length++;
}
}