(0xffffffff)>>24; //-1 (0xffffffff / 2)>>23; //255
argb颜色需要一个无符号整数uint才能存储,如果首位是F,那么第一个二进制位就是1。
在右移操作时,编译器误以为这是一个负数,会一直补1,导致最后出来一个负数。
而C++里边,这种低级问题就不会出现的。
时间: 2024-10-19 11:45:48
(0xffffffff)>>24; //-1 (0xffffffff / 2)>>23; //255
argb颜色需要一个无符号整数uint才能存储,如果首位是F,那么第一个二进制位就是1。
在右移操作时,编译器误以为这是一个负数,会一直补1,导致最后出来一个负数。
而C++里边,这种低级问题就不会出现的。