C ++:参考:C语言运行库:cstdlib(stdlib.h中):itoa
整数转换为字符串(非标功能)整数的值转换为一个空结束的字符串使用指定的基础和存储由乙方给定的参数数组的结果。
如果基数是10和值是负数,结果字符串的前面加上减号( - )。与任何其他基础,价值总是被认为是无符号。
海峡应该是一个数组足够长的包含任何可能的值:(表示sizeof(int)* 8+1)为基数= 2,即17字节的16位平台和32位平台的33。
参数
值
值被转换为一个字符串。
海峡
数组在内存中的存储位置所产生的空结束的字符串。
基地
用来表示数值基地作为一个字符串值2和36之间,其中10表示十进制基地,16进制,8进制,2二进制。
返回值
由此产生的一个空指针结尾的字符串,参数str相同。
可移植性
这个函数是没有定义的ANSI - C,而不是C + +的一部分,而是由一些编译器的支持。
对于某些情况下可能sprintf的符合标准的替代方法:
sprintf的序列(STR,“%D“类,价值)转换为十进制基地。
sprintf的序列(STR,“%X“的,值)转换为十六进制基地。
sprintf的序列(STR,“%o“的,值)转换为八进制基地。
范例
/* itoa example */
#include <stdio.h>
#include <stdlib.h>
int main ()
{
int i;
char buffer [33];
printf ("Enter a number: ");
scanf ("%d",&i);
itoa (i,buffer,10);
printf ("decimal: %s\n",buffer);
itoa (i,buffer,16);
printf ("hexadecimal: %s\n",buffer);
itoa (i,buffer,2);
printf ("binary: %s\n",buffer);
return 0;
}
复制代码
输出:
Enter a number: 1750
decimal: 1750
hexadecimal: 6d6
binary: 11011010110
本文摘自: 编程十万个为什么(http://www.) 详细出处请参考:http://www.