For the Boolean condition in a control structure, the type does not need a direct conversion to bool.
Instead, a unique conversion to an integral type, such as int or char, or to a pointer type is sufficient.
The conversion to bool is often used to read objects and test for success in the same expression: