`
java-mans
  • 浏览: 11390991 次
文章分类
社区版块
存档分类
最新评论

atoi() 与 itoa()函数用法

 
阅读更多

itoa()函数的原型为: char *itoa( int value, char *string,int radix);

itoa()函数有3个参数:第一个参数是要转换的数字,第二个参数是要写入转换结果的目标字符串,第三个参数是转换数字时所用的基数。在例中,转换基数为10。10:十进制;2:二进制...

itoa并不是一个标准的C函数,它是Windows特有的,如果要写跨平台的程序,请用sprintf。
是Windows平台下扩展的,标准库中有sprintf,功能比这个更强,用法跟printf类似:

char str[255];
sprintf(str, "%x", 100); //将100转为16进制表示的字符串。

下面是一个十进制转八进制的方法:

#include "stdio.h"
#include "stdlib.h"

int main(void)
{
	int num = 10;
	char str[100];
	itoa(num, str, 8);      //将整数10转换为八进制保存在str字符数组中
	printf("%s\n", str);
	system("pause");
	return 0;
}

下面是一个十进制转二进制的方法:

#include "stdio.h"
#include "stdlib.h"

int main(void)
{
	int num = 15;
	char str[100];
	int n = atoi(itoa(num, str, 2));   //先把num转换为二进制的字符串,再把该字符串转换为整数
	printf("%d\n",n);
	system("pause");
	return 0;
}

itoa()函数的扩展:

char *_itoa( int value, char *string, int radix );

char *_i64toa( __int64 value, char *string, int radix );

char * _ui64toa( unsigned _int64 value, char *string, int radix );

wchar_t * _itow( int value, wchar_t *string, int radix );

wchar_t * _i64tow( __int64 value, wchar_t *string, int radix );

wchar_t * _ui64tow( unsigned __int64 value, wchar_t *string, int radix );

程序代码如下:

#include "stdio.h"
#include "stdlib.h"

int main(void)
{
	char buffer[20];
	int i = 3445;
	long l = -344115L;
	unsigned long ul = 1234567890UL;

	_itoa( i, buffer, 10 );
	printf( "String of integer %d (radix 10): %s\n", i, buffer );
	_itoa( i, buffer, 16 );
	printf( "String of integer %d (radix 16): 0x%s\n", i, buffer );
	_itoa( i, buffer, 2 );
	printf( "String of integer %d (radix 2): %s\n", i, buffer );

	_ltoa( l, buffer, 16 );
	printf( "String of long int %ld (radix 16): 0x%s\n", l,buffer );

	_ultoa( ul, buffer, 16 );
	printf( "String of unsigned long %lu (radix 16): 0x%s\n", ul,buffer );

	system("pause");
	return 0;
}



分享到:
评论

相关推荐

    深入理解atoi()与itoa()函数的用法

    本篇文章是对atoi()与itoa()函数的用法进行了详细的分析介绍,需要的朋友参考下

    atoi--itoa-function-prototype.rar_itoa_prototype

    字符串和整形互相转换函数atoi,itoa函数原型认识两个函数以及用法

    atoi--itoa-function-prototype.rar_prototype

    字符串和整形互相转换函数atoi,itoa函数原型 认识两个函数以及用法

    C语言面试总结

    1.7 itoa函数和atoi函数 1.8 strcmp函数实现 1.9 strcpy函数实现 1.10 memcpy函数实现 1.11 memcpy和memmove函数的实现 1.12 strcat函数实现 1.13 使用库函数atoi,将char *→int 1.14 使用库函数itoa,将int→...

    字符串处理函数

    字符串是Auto Lisp的基本数据...本章将介绍这些函数的功能和用法。Auto Lisp提供的字符串处理函数有: ·ASCⅡ ·CHR ·STRLEN ·ITOA ·ATOI ·ATOF ·RTOS ·ANGTOS ·STRCAT ·SUBSTR ·STRCASE ·READ

    《你必须知道的495个C语言问题》

    可我找不到任何方法来声明这样的函数——感觉我需要一个返回指针的函数,返回的指针指向的又是返回指针的函数……,如此往复,以至无穷。 12  数组大小 13 1.23 能否声明和传入数组大小一致的局部数组,或者由...

    C语言FAQ 常见问题列表

    o 2.14 我总算弄清除函数指针的声明方法了, 但怎样才能初始化呢? * 3. 结构、联合和枚举 o 3.1 声明 struct x1 { ...}; 和 typedef struct { ...} x2; 有什么不同? o 3.2 为什么 struct x { ...}; x ...

    你必须知道的495个C语言问题

    可我找不到任何方法来声明这样的函数——感觉我需要一个返回指针的函数,返回的指针指向的又是返回指针的函数……,如此往复,以至无穷。 数组大小 1.23 能否声明和传入数组大小一致的局部数组,或者由其他参数...

    你必须知道的495个C语言问题(PDF)

    1.14 我总算弄清除函数指针的声明方法了, 但怎样才能初始化呢? . . 5 2 结构、联合和枚举7 2.1 声明struct x1 f . . . g; 和typedef struct f . . . g x2; 有什么不同? . 7 2.2 为什么struct x f . . . g; x ...

Global site tag (gtag.js) - Google Analytics