C++ Boolean (bool) Data Type



The bool data type in C++ stands for Boolean values, which are True and False. In C++, 1 stands for True whereas 0 stands for False. The keyword "bool" is used to declare a Boolean data type. The addition of bool data type is a one of the newer features of C++ language.

Use of Boolean Data Type

The Boolean (bool) data type is used in the following ways −

  • In conditions where we need to have binary values, i.e., values which represent two states of a variable.
  • When we need to run loops based on certain conditions, we use bool data types.
  • In case of having null values, we generally relate them to bool data types.
  • For comparing two values for equality or inequality, we generally use bool data types.

Values of Boolean (bool) Data Type

The bool data types in C++ can have one of two values, and these values are as follows −

  • True or 1
  • False or 0

As stated earlier, Boolean 1 means true whereas Boolean 0 means false in C++ compilation.

Creating a Boolean Variable

We can declare a Boolean variable using the "bool" keyword followed by the variable name.

Syntax

Use the following syntax to create a Boolean type variable −

bool variable_name = [value];

Here, [value] is an optional and can be used to assign value during the declaration.

Example

In the following examples, we are declaring a Boolean variable, assigning a value to it.

// C++ program to demonstrate 
// bool data type 
#include <iostream> 
using namespace std; 

// Driver code 
int main() { 
   bool flag;
   flag=1;//this is true    
   cout<<flag;    
   return 0; 
}

Example of bool Data Type

The following example demonstrate the use of Boolean (bool) data type −

// C++ program to demonstrate
// bool data type
#include <iostream>
using namespace std;

int main(){ 
   bool flag;
   flag=1;//this is true
   bool flag1=true;

   cout<<flag<<" "<<flag1<<endl;

   int count=0;
   while(flag){
      //condition where flag is true
      count++;
      if(count>=3) flag=false;
   }

   cout<<count<<" "<<flag<<endl;

   if(flag1) cout<<"True flag1"<<endl;
      else cout<<"False flag1"<<endl;

   return 0; 
}

Output

1 1
3 0
True flag1

Implicit Conversion of Bool Variables

Boolean data types can be implicitly converted to numeric data types, and vice-versa. This is possible as any value greater than 0 has a Boolean true value, whereas any value less than or equal to 0 has a Boolean false value.

Also, the Boolean values can be added in form of integers to integral variables, using implicit conversion techniques. Hence, when we add a Boolean value to an integer, it gets incremented by 1 if the value is true, otherwise it remains same as false value corresponds to 0.

Example

This is clearly explained in the examples given below −

// C++ program to demonstrate
// bool data type
#include <iostream> 
using namespace std;

int main() {
   bool flag;
   flag=1;//this is true
   bool flag1=true;

   cout<<flag<<" "<<flag1<<endl;

   int count=0;
   int x=12;
   float y=35.45;
   bool k=count, k1=x, k2=y;
   int sum=x+flag+flag1;

   cout<<k<<" "<<count<<" "<<k1<<" "<<x<<" "<<k2<<" "<<y<<" "<<endl;
   cout<<After adding Boolean and integer values : << sum<<endl;
   return 0; 
}
Advertisements
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy