摘要:
腾讯实习笔试遇到C类型转换的基础问题,题目及分析如下:32位的机器下,下面说法哪些是正确的? signed char a = 0xe0; unsigned int b = a; unsigned char c = a;A. a>0 && c>0 B. a==c C. b的十六进制的表示是:0xffffffe0 D. 以上说法都是错误的解析:A错,signed char比较时候类型要提升成int,符号位是补最高位的1,所以a应该是负数B错:a和c都要要先转换成int类型才进行比较,a转换成int后是负数,c转化成int之后是正数C对:signed char先转化成in 阅读全文