void StrToDec(CPU_INT08U *GPRSAddr, CPU_INT16U *GPRSAddrDec, CPU_INT08U nLen)
{
CPU_INT08U i;
for(i=0;i<nLen;i++)
{
if((*(GPRSAddr+i)>='0')&&(*(GPRSAddr+i)<='9'))
{
*GPRSAddrDec+=(*(GPRSAddr+i)-'0')*(unsigned short)pow(16,nLen-i-1);
}
else if((*(GPRSAddr+i)>='a')&&(*(GPRSAddr+i)<='f'))
{
*GPRSAddrDec+=(*(GPRSAddr+i)-'a'+10)*(unsigned short)pow(16,nLen-i-1);
}
else if((*(GPRSAddr+i)>='A')&&(*(GPRSAddr+i)<='F'))
{
*GPRSAddrDec+=(*(GPRSAddr+i)-'A'+10)*(unsigned short)pow(16,nLen-i-1);
}
}
return;
}
int main(void)
{
CPU_INT16U GPRSAddr[];
CPU_INT16U GPRSAddrDec;
StrToDec(GPRSAddr,&GPRSAddrDec,2);
}