**CHAR_BIT : ** It is the number of bits in char. These days, almost all architectures use 8 bits per byte (But it is not the case always, some older machines used to have 7-bit byte). It can be found in

Let us see an application of it. Suppose we wish to print byte by byte representation of an integer.

**Examples :**

Input : 4 Output : 00000000 00000000 00000000 00000100 Input : 12 Output : 00000000 00000000 00000000 00001100

`// CPP program to print byte by byte presentation ` `#include <bits/stdc++.h> ` `using` `namespace` `std; ` ` ` `// function in which number and intitally 0 is passed ` `void` `printInBinary(` `int` `num) ` `{ ` ` ` `int` `n = CHAR_BIT*` `sizeof` `(num); ` ` ` `stack<` `bool` `> s; ` ` ` `for` `(` `int` `i=1; i<=n; i++) ` ` ` `{ ` ` ` `s.push(num%2); ` ` ` `num = num/2; ` ` ` `} ` ` ` `for` `(` `int` `i=1; i<=n; i++) ` ` ` `{ ` ` ` `cout << s.top(); ` ` ` `s.pop(); ` ` ` ` ` `// Put a space after every byte. ` ` ` `if` `(i % CHAR_BIT == 0) ` ` ` `cout << ` `" "` `; ` ` ` `} ` `} ` ` ` `int` `main() ` `{ ` ` ` `int` `num = 12; ` ` ` `printInBinary(num); ` ` ` `return` `0; ` `} ` |

*chevron_right*

*filter_none*

**Output :**

00000000 00000000 00000000 00001100

This article is contributed by **Apurva Agarwal**. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the **DSA Self Paced Course** at a student-friendly price and become industry ready.

## Recommended Posts:

- Generate first K multiples of N using Bitwise operators
- How to iterate over the elements of an std::tuple in C++
- Largest possible value of M not exceeding N having equal Bitwise OR and XOR between them
- Queries to find the Lower Bound of K from Prefix Sum Array with updates using Fenwick Tree
- Sum of bit differences for numbers from 0 to N | Set 2
- Bitwise operations on Subarrays of size K
- How to access private/protected method outside a class in C++
- Find a number M < N such that difference between their XOR and AND is maximum
- lvalues references and rvalues references in C++ with Examples
- Difference between cout and std::cout in C++
- C++ program to check whether a String is a Pangram or not
- Difference between pair in Multiset and Multimap in C++ STL
- How does Volatile qualifier of C works in Computing System
- How to use unordered_map efficiently in C++
- Count of binary strings of length N having equal count of 0's and 1's and count of 1's ≥ count of 0's in each prefix substring