char x=0xFF的x的值为?
发布网友
发布时间:2023-08-04 14:12
我来回答
共4个回答
热心网友
时间:2024-11-07 13:31
如果编译器把 char 当做unsigned char ,那么x就是正值 255;
如果编译器把char当做signed char ,那么x的首位是符号位1,此时0XFF的值是-1(即补码0xFF的原码);
如果编译器真把它当做 signed char:下面的写法就很坑:
char x=0xFF;//此时x!=0xFF,而是x=0xFFFFFFFF(char实际要和int一样占4个字节存储,空位竟然都填充1),而unsigned char就没有这个问题(空位全补0)
用 char x=-1;//则x==-1 是成立的
热心网友
时间:2024-11-07 13:31
x的值:
16进制 ff
10进制 255
8 进制 377
2 进制 1111 1111
ASCII 普通字符只编码到 0x7f
ff 是特殊字符,unicode 文件头部 用它做特殊标记符号: fffe 或 feff 表示 大端小端之类信息。
热心网友
时间:2024-11-07 13:32
0xFF代表16进制即x=FFh x=255
热心网友
时间:2024-11-07 13:33
ASC码表中对应255的字符为blank,即空字符