10进制数和16进制数之间的转换

来源:百度知道 编辑:UC知道 时间:2024/06/05 05:15:55
他们是什么关系?是如何转换的。
例如现在有两个10进制的整数 int a,b
转换成16进制怎么转?

使用ltoa或itoa函数
#include <stdlib.h>
#include <stdio.h>

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

_itoa( i, buffer, 10 );//转换成10进制字符
printf( "String of integer %d (radix 10): %s\n", i, buffer );
_itoa( i, buffer, 16 );//转换成16进制字符
printf( "String of integer %d (radix 16): 0x%s\n", i, buffer );
_itoa( i, buffer, 2 );//转换成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 );
}