读书人

将一个int型数据转化成字符串,该如何处

发布时间: 2013-06-26 14:29:32 作者: rapoo

将一个int型数据转化成字符串
比如,int a = 12345,现在将12345转化成"12345",用什么实现?用除取商总感觉很繁琐 int char?*
[解决办法]
没什么好办法,库函数itoa都是这么实现的。

如果,只是支持一种进制,从效率上讲可以优化。
[解决办法]
sprintf()
[解决办法]
虽然没有测试,估计itoa 的效率高于sprintf
[解决办法]

引用:

#include <stdio.h>

int main(){
int a = 12345;
char s[10];
sprintf(s, "%d", a);
return 0;
}

s[10]不够长,"-2147483648"要占12个字节
我3楼的代码如考虑负数也要将char s[11]改为char s[12]才行。

读书人网 >C语言

热点推荐