十进制字符串转换成十六进制字符串

十进制字符串转换成十六进制字符串可以用speintf函数直接来实现

将十进制整数转换成十进制字符串也可以用spritf函数。

sprintf(HexCardNum,"%x",Cardnum);

strncpy(HexShortCardNum,HexCardNum+2,8);
Cardnum = htoi(HexShortCardNum);

sprintf(Outputcard,"%d",Cardnum );

int htoi(const char *s)//十六进制转换成十进制//编程原理是将十六进制转换成二进制然后再转换成十进制
{
	if( !s )
           return 0;

	int n = 0;
	while( *s )
	{
		n <<= 4;//每次都左移一个int字节
		if( *s <= '9' )
			n |= ( *s & 0xf );
		else
			n |= ( (*s & 0xf) + 9 );//二进制转换在转换成十进制
		s++;
	}
	return n;
}

你可能感兴趣的:(十进制字符串转换成十六进制字符串)