1. 程式人生 > >64位整型和字串轉換

64位整型和字串轉換

字串轉64位整型

__int64 atoi64_t(char *arrTmp)
{
	int len =0;
	int i=0;
	int j =0;
	__int64 nTmpRes =0;
	__int64 ntmp10=1;
	if (arrTmp == NULL)
	{
		return 0;
	}
	len=strlen(arrTmp);

	for (i =len-1 ; i >=0;i--)
	{
		ntmp10 =1;
		for (j=1;j<(len -i); j++)
		{
			ntmp10 = ntmp10*10;
		}
		nTmpRes =nTmpRes + (arrTmp[i]-48)* ntmp10;
	}

	return nTmpRes;
}

64位整型轉字串
int itoa64_t(__int64 n, char *p, int len)
{
    char arrTmp[128] ;
    int i =0;
    int j =0;

    __int64 tmp;

    int numTmp =0;
    if (p == NULL)
    {
        return 1;
    }

    for (i =0; ;i++)
    {


        numTmp=n%10;
        tmp = n/10;

        if (numTmp==0 && tmp== 0)
        {
            break;
        }

        arrTmp[i] = numTmp+48;
        n= tmp;



    }
    arrTmp[i] =0;
    if (len < strlen(arrTmp))
    {
        return 1;
    }
    else
    {
        for (i=strlen(arrTmp)-1,j =0; i>=0;i--,j++ )
        {
            p[j] = arrTmp[i];
        }
    }
    return 0;

}