float f_value = 15.02;
int i_tmp;
time_t t;
srand((unsigned)time(&t)); //初始化随机种子, 否则随机数不随机
i_tmp = rand();
i_tmp -= (i_tmp >> 4 << 4);
f_value += i_tmp;
右移四位,然后再左移四位,,
移位的意思,,,
根据运算符优先级,先执行括号内部的,即就是先右移四位再左移四位, 然后运算-=.
清掉最低4-bit的值,第一个 >>4 表示右移4-bit,最低位的 4-bit 内容丢失,后面的 <<4表示再补回4-bit 的 0.