C将十六进制数字字符串转成数字
1、将十六进制数字字符串转成数字
long lTemp = strtol(“0xa10b”, NULL, 16);
这样的话,就将0xa10b这个十六制形式的字符串转为十进制的数字了.
注:strtol的功能就是将字符串转为数字,而后面的16就是进制,根据需要,你可以是二进制,八进制,十进制,或是十六进制应该都是可以的.
2、将十六进制数字转成字符串
一种方法:
int iTemp = 0xa10b;
char szBuf[100];
sprintf(szBuf, “0x%x”, iTemp );
printf(“%s”, szBuf);
二种方法:
char szBuf[100];
ltoa(0xa5, szBuf, 16);
printf(“%s”, szBuf);
注:szBuf 中就是要得到的字符串
3、附表
格式化规定符
Turbo C2.0提供的格式化规定符如下:
━━━━━━━━━━━━━━━━━━━━━━━━━━
符号 作用
──────────────────────────
%d 十进制有符号整数
%u 十进制无符号整数
%f 浮点数
%s 字符串
%c 单个字符
%p 指针的值
%e 指数形式的浮点数
%x, %X 无符号以十六进制表示的整数
%0 无符号以八进制表示的整数
%g 自动选择合适的表示法
━━━━━━━━━━━━━━━━━━━━━━━━━━
还没有评论,来说两句吧...