1. 程式人生 > >整型陣列處理演算法(十四)不用庫函式,用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;
}


有興趣的朋友可以測試一下,如問題請指教。