读书人

c加密有关问题

发布时间: 2012-03-27 13:44:24 作者: rapoo

c加密问题

C/C++ code
    for(int i = 48 ; i < 100 ; i ++ )    {        char a = i;        char b = a&0xf8;        char c = a&0x7;        int d = (b>>3) + (c<<5);        d=d^0xff;        d=d^0xff;        b = d&0xe0;        c = d&0x1f;                printf("%d---------------------------\n" , i);        printf("a = %c \n" , a);        printf("d = %d \n" , d);        d = (b>>5) + (c<<3);        printf("d = %c \n" , d);    }    printf("\n");    return 0;

为什么a不等于d

[解决办法]
去掉
d=d^0xff;
d=d^0xff;

试试?

读书人网 >C语言

热点推荐