C编程方法记录

1. 如何快速得出一个整数 n, 判断 n % 4 == 0 是否成立?

b&3 == 0 
#经过推算 4 的整数倍的值转化二进制后, 后两位都为0, 则编程中可以使用以下公式
设X对Y求余,Y等于2^N,公式为:X & (2^N - 1)
    printf("
----------位移取余--------------
");
    printf("[1]: 32&15: %d 
", 32 & (2^4 - 1)); //对 16 取余成立
    printf("[2]: 32&(~16): %d 
", 32 & ~16);    

    printf("[3]: 16: %d 
", 16);      // 0001 0000
    printf("[4]: ~16: %d 
", ~16);    // 1110 1111   

    printf("[5]: 16: %0x 
", 16);      // 0001 0000
    printf("[6]: ~16: %0x 
", ~16);    // 1110 1111   

    printf("[7]: 15: %0x 
", 15);
    printf("[8]: ~15: %0x 
", ~15);
    printf("----------------------------------
");

原文地址:https://www.cnblogs.com/han-guang-xue/p/14602256.html