本文介绍了哪里是在Linux中itoa功能?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
itoa()
是一个非常方便的功能,将数字转换为字符串。 Linux的似乎并不具有 itoa()
,是否有相同功能或做我必须使用的sprintf(STR,%D,NUM )
?
解决方案
编辑:对不起,我应该记住的是,这台机器是决然不规范,已经插上各类非标的libc
学术目的的实现; - )
由于 itoa()
确实是非标准的,由几个有用的评论者提到的,最好使用的sprintf(target_string,% D,source_int)
或(更好的,因为它是安全的缓冲区溢出)的snprintf(target_string,size_of_target_string_in_bytes,%D,source_int)
。我知道这是不是很简明或酷为 itoa()
,但至少你可以写一次,到处运行(TM); - )
这里是老(编辑)答案
您是在陈述正确的,默认的 GCC的libc
不包括 itoa()
,像其他几个平台时,由于它不是技术上是标准的一部分。请参见多一点信息。请注意,您必须
的#include<&stdlib.h中GT;
当然,你已经知道这一点,因为你想的使用的 itoa()
在Linux上后,presumably使用它在另一个平台...但是... code(从上面的链接偷来的)看起来像:
示例
/ * itoa例如* /
#包括LT&;&stdio.h中GT;
#包括LT&;&stdlib.h中GT;诠释的main()
{
INT I;
炭缓冲液[33];
的printf(请输入一个数字:);
scanf函数(%d个,&安培; I)
itoa(ⅰ,缓冲液,10);
的printf(十进制:%S \\ n,缓冲区);
itoa(ⅰ,缓冲液,16);
的printf(十六进制:%S \\ n,缓冲区);
itoa(ⅰ,缓冲液,2);
的printf(二进制文件:%S \\ n,缓冲区);
返回0;
}
输出:
Hope this helps!
这篇关于哪里是在Linux中itoa功能?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!