Because the CPU can’t address anything smaller than a byte.
More Related Contents:
- Setting extra bits in a bool makes it true and false at the same time
- Double Negation in C++
- System where 1 byte != 8 bit? [duplicate]
- How do I safely pass objects, especially STL objects, to and from a DLL?
- How do I achieve the theoretical maximum of 4 FLOPs per cycle?
- Is sizeof(bool) defined in the C++ language standard?
- Alternative to vector
- gcc optimization flag -O3 makes code slower than -O2
- How to create a byte out of 8 bool values (and vice versa)?
- Why does this function push RAX to the stack as the first operation?
- Can I assume (bool)true == (int)1 for any C++ compiler?
- Does true equal to 1 and false equal to 0? [duplicate]
- C++ printing boolean, what is displayed?
- Is C/C++ bool type always guaranteed to be 0 or 1 when typecast’ed to int?
- GCC ABI compatibility
- What is the printf format specifier for bool?
- What is difference between sjlj vs dwarf vs seh?
- Can a bool read/write operation be not atomic on x86? [duplicate]
- Is the use of std::vector objects in C++ acceptable, or should I use an alternative?
- bool operator ++ and —
- How to Convert unsigned char* to std::string in C++?
- C++ int to byte array
- Casting int to bool in C/C++
- Why can a T* be passed in register, but a unique_ptr cannot?
- Is it ok to read a shared boolean flag without locking it when another thread may set it (at most once)?
- Is it possible to create a type in c++ that takes less than one byte of memory?
- Detecting CPU architecture compile-time
- Why use !! when converting int to bool?
- Creating Library with backward compatible ABI that uses Boost
- C++ bool returns 0 1 instead of true false