How to get 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 = 0;

	print_bits(num);
	
    char bit = (num >> N) & 1;
    printf("%d\n", bit);
    
	N = 3;
	bit = (num >> N) & 1;
    printf("%d\n", bit);	
	
	N = 4;
	bit = (num >> N) & 1;
    printf("%d\n", bit);
 
    return 0;
}
 
 
 
/*
run:
 
00000000000000000000000000001111
1
1
0
 
*/

 



answered Jul 5, 2020 by avibootz

Related questions

1 answer 176 views
176 views asked Jul 5, 2020 by avibootz
1 answer 145 views
1 answer 181 views
1 answer 167 views
1 answer 152 views
152 views asked Apr 8, 2021 by avibootz
1 answer 213 views
213 views asked Mar 31, 2021 by avibootz
1 answer 119 views
119 views asked Oct 21, 2023 by avibootz
...