1. '1'、"1"和1在32位系统中占用空间大小一样吗?
答案:不一样,1占4个字节,'1'占一个字节,"1"占两个字节,因为字符串常量中,系统会在末尾自动加生一个'\0'。
----------------------------------------
2. 3/(-2)和3%(-2)结果是多少?
答案:-1和1。
分析:大多数编译器会要求余数和被除数的正负号相同,设a/b商为q,余数为r,那么要求r和a的正负号相同。
----------------------------------------
3. <<和>>移位操作移动的位数不能大于数据的长度,也不能小于0,像这样的操作是不正确的:0x01<<2+32;或者0x01>>2-3;注意:+,-优先级比<<和>>要高。
关于运算符的优先级问题,还有很多陷阱,我参照C的一些资料,列举如下: