整型陣列處理演算法(十四)不用庫函式,用C語言實現將一整型數轉換成字串
阿新 • • 發佈:2019-01-09
不用庫函式,用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; }
有興趣的朋友可以測試一下,如問題請指教。