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 165 views
165 views asked Jul 5, 2020 by avibootz
1 answer 132 views
1 answer 165 views
1 answer 154 views
1 answer 146 views
146 views asked Apr 8, 2021 by avibootz
1 answer 197 views
197 views asked Mar 31, 2021 by avibootz
1 answer 109 views
109 views asked Oct 21, 2023 by avibootz
...