In the previous article, we had been discussing about what operators are and the types of operators in C++. In that article, we discussed till arithmetic and relational operators, in this article we will continue our discussion with operators in C++ by moving on to the other types of operators.
Logical Operators
In the previous article, we discussed about relational operators that eastablish relationships among the operands, logical operators refers to the ways by which these relationships can be connected.
(Logical OR), && (Logical AND), ! (Logical NOT) are the three types of logical operators. These are used to combine existing expressions.
The examples below will illustrate the working of each of these operators.
(4<5)(5<4) this expression results in 1 (true), since one of the expression (first one) is true.
(6<8)&&(4==4) results in 1 (true).
(6<8)&&(4<3) results in 0 (false), because one of the relation is false.
!(4<8) results in 0 (false).
!(4>10) results in 1 (true).
Since (!) operator reverses the value of the expression, it is also known as the negation operator.
//C++ Program to illustrate logical operators
#include<iostream.h>
void main(void)
{
int a=5,b=10,c=15,r;
r=(a<b)(b==c);
cout<<r;//true (1)
r=(b==c)&&(b==b);
cout<<r;//false (0)
r=!(a=b);
cout<<r;//false (0)
}
Conditional Operator
It has the syntax: expression1?decision1:decision2;
It can be read as: if expression1 is true then the value of the whole expression evaluates to decision1 otherwise the value of whole expression evaluates to decision2.
9>7?11:12 This expression evaluates to 11.
Its use is illustrated in the program below:
//Program to illustrate the use of conditional opeartor
#include<iostream.h>
void main(void)
{
int income, age;
float tax;
cout<<"enter income: ";
cin>>income;
cout<<endl<<"enter age; ";
cin>>age;
tax=age>=60?income/10:income/5;
cout<<"TAX: "<<tax;
}
sizeof Opeartor
It is a unary operator (operates on one operand). It returns the length (in bytes) of the operand (which can be any declared variable or data type).
//C++ Program to illustrate sizeof operator
#include<iostream.h>
void main(void)
{
int a;
float b;
char c;
cout<<"sizeof variable a: "<<sizeof a<<endl;
cout<<"sizeof variable b: "<<sizeof b<<endl;
cout<<"sizeof variable c: "<<sizeof c<<endl;
cout<<"sizeof data type int: "<<sizeof (int)<<endl;
cout<<"sizeof data type float: "<<sizeof (float)<<endl;
cout<<"sizeof data type char: "<<sizeof (char)<<endl;
}