马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
itoa 函数文档
函数概要:
itoa 函数将整型值转换为指定进制表示的标准字符串。
如果是十进制数,并且数值为负,那么转换后的字符串前边有一个负号('-');如果是其他进制数,其值始终被认为是无符号类型。
用于存放的字符串必须拥有足够的空间,以便可以容纳任何可能的数值:对于 2 进制数,需要使用 (sizeof(int)*8+1) 个字节来存放。比如在 16 位平台上,需要 17 个字节来存放;在 32 位平台上,则需要 33 个字节来存放。
注意:
该函数并不是标准的 C 语言函数,所以不能在所有的编译器中使用。
为了提高程序的可移植性,请使用 sprintf 函数代替。
函数原型:
#include <stdlib.h>
...
char *itoa(int value, char *str, int base);
参数解析:
参数 | 含义 | value | 待转换的整型数值 | str | 用于存放转换结果的字符串 | base | 1. 指定转换结果用多少进制数来表示
2. 取值范围是 2~36(2 表示二进制,10 表示十进制……) |
返回值:
返回值是一个指向转换结果的指针,同 str 参数。
可移植性:
该函数并不是标准的 C 语言函数,所以不能在所有的编译器中使用。
为了提高程序的可移植性,请使用 sprintf 函数代替:
- sprintf(str,"%d",value) // 转换为十进制表示的字符串
- sprintf(str,"%x",value) // 转换为十六进制表示的字符串
- sprintf(str,"%o",value) // 转换为八进制表示的字符串
演示:
#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;
}
版权归鱼C工作室(www.fishc.com)所有,转载请注明来源!
|