#include <stdio.h> void main() { char c; unsigned char d; c=255; d=255; printf("c=%d\nd=%d\n",c,d);

日期:2021-06-04 00:46:19 人气:1

#include <stdio.h> void main() { char c; unsigned char d; c=255; d=255; printf("c=%d\nd=%d\n",c,d);

255 = 256 -1 = 2^8 -1;
一个字符占用8个二进制位
也就是说:11111111表示255.
但是这里第一位1被当做符号位,表示负数,用补码表示,上面求补码后变为
10000001 也就是 -1.
    A+
热门评论