整型数组处置算法(十四)不用库函数,用C语言实现将一整型数转换成字符串

整型数组处理算法(十四)不用库函数,用C语言实现将一整型数转换成字符串

不用库函数,用C语言实现将一整型数转换成字符串,如:int a=123456,转换成"123456"。

如题,要求将一整型数转换为字符串。这里要考虑的是整型数可能是负数、正数和0。

 

实现如下:

char* Int2Str(int nIn, char* strOut)
{
	int nCount = 0;
	int nTemp;
	int nFlag =0;
	char cTemp;
	int i =0;
	if (strOut==NULL)
	{
		return NULL;
	}

	//如果为0
	if (nIn==0)
	{
		strOut = "0";
		return strOut;
	}

	//如果为负数
	if (nIn < 0)
	{
		nIn = -nIn;
		strOut[nCount] = '-';
		nCount++;
		nFlag =1;
	}

	nTemp = nIn;

	//转换
	while(nTemp>0)
	{
		strOut[nCount] = (char)(nTemp%10 +'0');
		nCount++;
		nTemp = nTemp/10;
	}

	//结束符
	strOut[nCount]='\0';

	//如果是负数从strOut[1]开始
	if (nFlag == 0)
	{
		for (i=0; i<nCount/2; i++)
		{
			cTemp = strOut[i];
			strOut[i] = strOut[nCount-1-i];
			strOut[nCount-1-i]=cTemp;
		}
	}
	else
	{
		for (i=1; i<nCount/2; i++)
		{
			cTemp = strOut[i];
			strOut[i] = strOut[nCount-i];
			strOut[nCount-i]=cTemp;
		}
	}

	return strOut;
}


有兴趣的朋友可以测试一下,如问题请指教。

 

转载请注明原创链接:http://blog.csdn.net/wujunokay/article/details/14107085