本文介绍了哪里是在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功能?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-21 09:35