您的位置:首页 > 编程语言

数字转化成字符串 (自己用代码实现)

2009-07-22 22:19 375 查看
#include <iostream>
using namespace std;

void int2str(int n, char *str)
{
char buf[10] = "";
int i = 0;
int len = 0;
int temp = n < 0 ? -n: n;  // temp为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;            //末尾是结束符0
while(1)
{
i--;
if (buf[len-i-1] ==0)
{
break;
}
str[i] = buf[len-i-1];  //把buf数组里的字符拷到字符串
}
if (i == 0 )
{
str[i] = '-';          //如果是负数,添加一个负号
}
}

int main()
{
int nNum;
char p[10];
cout << "Please input an integer:";
cin >> nNum;
cout << "output: " ;
int2str(nNum, p);        //整型转换成字符串
cout<< p << endl;
return 0;
}


Please input an integer: 1234
Output: 1234

输入负数:

Please input an integer: -1234

Output: -1234
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐