- 论坛徽章:
- 0
|
原帖由 zhouxb 于 2006-8-18 11:13 发表
npacklen = (ptr[2] >> 4) * 10 + (ptr[2] & 0x0f) +
(ptr[1] >> 4) * 1000 + (ptr[1] & 0x0f) * 100 + 2;
这里npacklen代表什么?
如果ptr[1]=0X12,ptr[2]=0X34,那么npa ...
>>
>>
>>我把你的程序修改了一下:
>>
>>
#include <stdio.h>
int
main(){
int npacklen;
int ptr[3];
ptr[1] = 0x12;
ptr[2] = 0x34;
int a,b,c,d,e;
a = ptr[2] >> 4;
b = ptr[2] & 0x0f;
c = (ptr[1] >> 4);
d = ptr[1] & 0x0f;
e = a * 10 + b + c *1000 + d * 100 +2;
printf("a :%x:, b :%x:, c :%x:, d :%x:, e :%x:\n");
npacklen = (ptr[2] >> 4) * 10 + (ptr[2] & 0x0f) +
(ptr[1] >> 4) * 1000 + (ptr[1] & 0x0f) * 100 + 2;
printf("npacklen is :%x:\n", npacklen);
return 0;
}
~
~
"test.c" 21L, 458C 已写入
bayweb@bbs2:~$ gcc test.c
bayweb@bbs2:~$ ./a.out
a :bfffe290:, b :40016ed8:, c :bfffe2e4:, d :bfffe244:, e :400271a8:
npacklen is :4d4:
bayweb@bbs2:~$ |
|