整數轉換字元串,友善輸出
Int8 intToStr(Int32 m, char str[])
{
int i = 0;//m的位數
int j = 1;//索引
int k = 0;//索引
char c;
//負數處理
if(m < 0)
{
str[i++] = '-';
}
//取絕對值
m = m > 0 ? m : -m;
do
{
//利用'0'的偏移算數字字元
str[i] = '0' + m%10;
m = m/10;
i++;
}while(m > 0);
//符号位處理,負數從1開始,非負數從0開始
if(str[0] == '-')
{
j = 1;
}else
{
j = 0;
}
k = i - 1;//字元串的最後一位的索引
//進行數的颠倒,原來從個位開始,例如321,儲存的格式是123,要颠倒過來
while(j < k)
{
c = str[j];
str[j] = str[k];
str[k] = c;
j++;
k--;
}
str[i] = '\0';//表示字元串結束
return i-1;//傳回數的位數
}