How to set the Nth bit of a number in C

1 Answer

0 votes
#include <stdio.h>
 
void print_bits(unsigned int n) { 
    for (int i = 31; i >= 0; i--)
       printf("%d", (n >> i) & 1);
    printf("\n");
}
 
int main()
{
    int num = 15, N = 5;

	print_bits(num);
	print_bits(1 << N);
	
    num = (1 << N) | num;
	
    print_bits(num);
	
	printf("%d\n", num);
    
    return 0;
}
 
 
 
/*
run:
 
00000000000000000000000000001111
00000000000000000000000000100000
00000000000000000000000000101111
47
 
*/

 

 



answered Jul 5, 2020 by avibootz

Related questions

...