/*
withZero=1 0x0123456->“0123456” 包括0
withZero=0 0x0123456->“123456” 不包括0
*/
u8 LongToAsc(u32 dwValue, u8 *buffer, u8 withZero) // u32ToAscHex
{
//0x12345678
//0xabcdefcd
u8 k,r,idx,jval=28;
u32 flag = 0xffffffff;
k=0;
for (idx=0; idx<8; idx++)
{
r = (u8)(dwValue>>jval);
if ((r==0)&&(k==0)&&(withZero==0)) /* withZero=1 返回8字节,withZero=0可变的字节 */
{
}
else
{
*(buffer+k)=ByteToAsc(r);
k++;
}
flag >>= 4;
dwValue &= flag;
jval -= 4;
}
if (k == 0)
{
*buffer = '0';
k = 1;
}
return k;
}