能力值:
( LV2,RANK:10 )
|
-
-
2 楼
有点晕胡~~~~~~~~
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
可能是我说的是不明白,我的意思是跟据33 63转成 两个ASCII码...
之后再写Byte
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
就是把0x33 0x63 转成0x3C
请老大们帮帮忙哦~~~~
|
能力值:
(RANK:410 )
|
-
-
5 楼
regcode[2]="3C";
sscanf(®code[0],"%02x",&value);
或许可以
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
谢谢..壳狼 先,
把0x3C 写到内存我知道怎么写,我想问的是怎么把内存中的0x33 0x63 这两个转成0x03和0x0C
之后把它们写到一起,就是0x3C ...还是谢谢你~~~
|
能力值:
(RANK:1060 )
|
-
-
7 楼
printf("%x%x",0x3,0xc);
|
能力值:
(RANK:410 )
|
-
-
8 楼
我是这样想的。上面代码应可以实现。
|
能力值:
(RANK:410 )
|
-
-
9 楼
haha。
if(code[0]==0x33&&code[1]==0x63)
value=0x3c;
|
能力值:
( LV6,RANK:90 )
|
-
-
10 楼
0x33-0x30= 是数字3
0x63这个是c的ascii 不知道怎么转
|
能力值:
( LV6,RANK:90 )
|
-
-
11 楼
数字的ascii比较好转,只要减去30h就可以了
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
int x;
char byte[2]={0x33,0x63}; //可以换成其他(0-f/F)的ascii
char result;
for(x=0;x<2;x++)
{
if(byte[x] >= 0x30 && byte[x] <= 0x39)
{
byte[x] = byte[x] - 0x30;
}
else if(byte[x] >= 0x41 && byte[x] <= 0x46)
{
byte[x] = byte[x] - 0x37;
}
else if(byte[x] >= 0x61 && byte[x] <= 0x66)
{
byte[x] = byte[x] - 0x57;
}
else
{
}
}
result = (byte[0] << 0x4) | byte[1];
|
能力值:
(RANK:410 )
|
-
-
13 楼
无需转换,0x63的字符就是"C"。ASCII字符"C"的十六进制表示是0x63。是等同的。
格式化输出为字符即可。
[QUOTE=yinhuo;463551]int x;
char byte[2]={0x33,0x63}; //可以改
char result;
for(x=0;x<2;x++)
{
if(byte[x] >= 0x30 && byte[x] <= 0x39)
...[/QUOTE]
很辛苦,自己构造了个格式化输出。
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
[QUOTE=kissoks;463525]谢谢..壳狼 先,
把0x3C 写到内存我知道怎么写,我想问的是怎么把内存中的0x33 0x63 这两个转成0x03和
0x0C之后把它们写到一起,就是0x3C ...还是谢谢你~~~[/QUOTE]
我是照着楼主的意思写的.
|
能力值:
( LV9,RANK:180 )
|
-
-
15 楼
反正就是 StrToInt
要怎么变通'固定位数吗 ? , 自己想.
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
谢谢大家热心帮助~~ 我去试试哈~~~~
谢谢~~
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
搞定了,谢谢大家~~~~~
|
|
|