invertbits.c

Run Settings
LanguageC
Language Version
Run Command
#include <stdio.h> #include <stdio.h> unsigned invertbits(unsigned x,int p,int n); void binaryprint(unsigned x); int main(void) { binaryprint((unsigned)14); printf("\n"); binaryprint((~( ~0 << 2) << ((3+1) - 2) )); printf("\n"); binaryprint( invertbits((unsigned)14, 3, 2)); } unsigned invertbits(unsigned x,int p,int n){ return x ^ (~( ~0 << n) << ((p+1) - n) ); } void binaryprint(unsigned x){ int i, ch; for(i = ((sizeof x) * 8) - 1; i >=0; i--){ ch = (x >> i) & 1; printf("%d", ch); } }
Editor Settings
Theme
Key bindings
Full width
Lines