void int2string(int n, char *str);
int main()
{
int num;
char p[10];
cout << "please input an integer:" ;
cin >> num;
cout << "output: ";
int2string(num,p);
cout << p<< endl;
return 0;
}
void int2string(int n, char *str)
{
char buf[10] = "";
int i = 0;
int len = 0;
int temp = n < 0 ? -n : n ; //小技巧
if(str == NULL)
{
return;
}
while (temp)
{
buf[i++] = (temp % 10) + '0'; //吧temp的每一位上的數存進buf中
temp = temp / 10 ;
}
len = n < 0 ? ++i : i; //確認n是否爲負數,是負數就需要一位作爲符號位進行佔位
str[i] = 0;
while (1)
{
i--;
if(buf[len - i - 1] == 0)
{
break;
}
str[i] = buf[len - i - 1]; //把buf中的字符逆序輸出
}
if(i == 0)
{
str[i] = '-'; //若是負數 就添加一個符號
}
}
整形轉化爲字符串實現 --小題一波
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.