Operators in C++ Explained with Simple Examples

If you’re learning C++, one of the first and most essential topics you’ll encounter is Operators in C++. Operators are the building blocks of expressions. They allow you to perform calculations, compare values, make decisions, and manipulate data.

Without operators, a program would not be able to process input, evaluate conditions, or update values. Simply put, operators make your code dynamic and meaningful.

In this guide, we’ll explore the different types of operators in C++, understand how they work, examine real code examples, and learn how to avoid common mistakes.

What Are Operators in C++?

Operators in C++ are special symbols that perform operations on variables and values (operands).

For example:

int a = 10;

int b = 5;

int sum = a + b;

 

Here:

  • + is an operator.

  • a and b are operands.

  • a + b is an expression.

Operators help perform:

  • Mathematical calculations

  • Logical comparisons

  • Value assignments

  • Bit-level operations

  • Memory evaluation

Understanding operators thoroughly is crucial for writing clean and efficient C++ programs.

Types of Operators in C++

C++ provides a wide variety of operators. Let’s explore them one by one.

1. Arithmetic Operators

Arithmetic operators perform mathematical calculations.

List of Arithmetic Operators

Operator

Meaning

Example

+

Addition

a + b

Subtraction

a – b

*

Multiplication

a * b

/

Division

a / b

%

Modulus

a % b

Example:

#include <iostream>

using namespace std;

 

int main() {

    int a = 10, b = 3;

 

    cout << “Addition: ” << a + b << endl;

    cout << “Subtraction: ” << a – b << endl;

    cout << “Multiplication: ” << a * b << endl;

    cout << “Division: ” << a / b << endl;

    cout << “Modulus: ” << a % b << endl;

 

    return 0;

}

 

Important Note

  • Division between integers gives integer results.

  • Modulus (%) only works with integers.

Image SEO

Alt Text: Arithmetic operators in C++ example showing addition and subtraction
Caption: Basic arithmetic operators in C++ with example calculations

2. Relational Operators

Relational operators compare two values and return a boolean result (true or false).

Operator

Meaning

==

Equal to

!=

Not equal to

>

Greater than

<

Less than

>=

Greater than or equal

<=

Less than or equal

Example:

int x = 10;

int y = 20;

 

cout << (x == y) << endl;  // 0 (false)

cout << (x < y) << endl;   // 1 (true)

 

These operators are commonly used in conditional statements like if, while, and for.

3. Logical Operators

Logical operators combine multiple conditions.

Operator

Meaning

&&

Logical AND

  

!

Logical NOT

Example:

int age = 25;

 

if (age > 18 && age < 60) {

    cout << “Eligible”;

}

 

Here:

  • Both conditions must be true for &&.

  • || works if at least one condition is true.

  • ! reverses the condition.

Image SEO

Alt Text: Logical and relational operators comparison example in C++
Caption: Using logical and relational operators together in conditional statements

4. Assignment Operators

Assignment operators assign values to variables.

Operator

Example

Meaning

=

a = 5

Assign value

+=

a += 5

a = a + 5

-=

a -= 5

a = a – 5

*=

a *= 5

a = a * 5

/=

a /= 5

a = a / 5

%=

a %= 5

a = a % 5

Example:

int num = 10;

num += 5;  // num becomes 15

 

Compound assignment operators make your code shorter and cleaner.

5. Increment and Decrement Operators

These operators increase or decrease a value by 1.

Operator

Meaning

++

Increment

Decrement

There are two types:

  • Pre-increment: ++a

  • Post-increment: a++

Example:

int a = 5;

 

cout << ++a << endl;  // 6

cout << a++ << endl;  // 6

cout << a << endl;    // 7

 

Pre-increment updates before use.
Post-increment updates after use.

6. Bitwise Operators

Bitwise operators work at the binary level.

Operator

Meaning

&

AND

  

^

XOR

~

NOT

<<

Left shift

>>

Right shift

Example:

int a = 5;  // 0101

int b = 3;  // 0011

 

cout << (a & b) << endl;  // 1

cout << (a | b) << endl;  // 7

 

These operators are useful in:

  • Embedded systems

  • Low-level programming

  • Performance optimization

Image SEO

Alt Text: Bitwise operators in C++ showing binary operations
Caption: Bitwise AND and OR operations represented in binary form

7. Conditional (Ternary) Operator

The ternary operator is a shorthand for if-else.

Syntax:

condition ? expression1 : expression2;

 

Example:

int age = 20;

 

string result = (age >= 18) ? “Adult” : “Minor”;

cout << result;

 

It makes code concise but should not be overused for complex logic.

8. Size of Operator

The sizeof operator returns the size (in bytes) of a variable or data type.

Example:

cout << sizeof(int) << endl;

 

This is helpful when:

  • Working with memory

  • Designing efficient programs

  • Allocating dynamic memory

Operator Precedence and Associativity

When multiple operators appear in one expression, C++ follows precedence rules.

For example:

int result = 10 + 5 * 2;

 

Multiplication happens first.
Result = 10 + 10 = 20

Common Precedence Order (High to Low)

  1. ++,

  2. *, /, %

  3. +,

  4. <, >, <=, >=

  5. ==, !=

  6. &&

  7. ||

  8. =

Use parentheses to control evaluation:

int result = (10 + 5) * 2;  // 30

 

Image SEO

Alt Text: Operator precedence table in C++ programming
Caption: Simplified operator precedence hierarchy in C++

Common Mistakes While Using Operators

Even experienced programmers make mistakes. Here are common ones:

1. Using = instead of ==

if (a = 5)  // Wrong

 

This assigns value instead of comparing.

2. Integer Division Confusion

cout << 5 / 2;  // Output: 2

 

Use float:

cout << 5.0 / 2;

 

3. Forgetting Parentheses

Complex expressions without parentheses can lead to unexpected results.

4. Misusing Increment Operators

Confusion between a++ and ++a can cause logical errors in loops.

FAQs About Operators in C++

1. What are operators in C++?

Operators in C++ are symbols that perform operations on variables and values.

2. How many types of operators are there in C++?

There are several types including arithmetic, relational, logical, assignment, bitwise, and more.

3. What is the difference between == and = ?

== compares values, while = assigns a value.

4. What is operator precedence?

Operator precedence determines which operation is performed first in an expression.

5. What is the ternary operator used for?

It is a shorthand way to write simple if-else statements.

6. Why are bitwise operators important?

They allow manipulation of data at the binary level and are useful in low-level programming.

Conclusion

Understanding Operators in C++ is essential for mastering the language. Operators allow you to perform calculations, make comparisons, manage memory, and control program logic.

From arithmetic to bitwise operations, each type plays a specific role in writing efficient and clean code. By learning operator precedence and avoiding common mistakes, you can write programs that behave exactly as intended.

As you continue your C++ journey, practice using these operators in small programs. The more you experiment, the more confident you’ll become.

Master the operators, and you’ll unlock the true power of C++.