C++ is a cross-platform language that can be used to create high-performance applications. It was developed by Bjarne Stroustrup, as an extension to the C language. The language was updated 3 major times in 2011, 2014, and 2017 to C++11, C++14, and C++17.
Why Use C++?
- C++ is one of the world’s most popular programming languages.
- C++ can be found in today’s operating systems, Graphical User Interfaces, and embedded systems.
- C++ is an object-oriented programming language that gives a clear structure to programs and allows code to be reused, lowering development costs.
- C++ is portable and can be used to develop applications that can be adapted to multiple platforms.
- C++ is fun and easy to learn!
- As C++ is close to C# and Java, it makes it easy for programmers to switch to C++ or vice versa.
C++ Basic Program
C++
#include <iostream>
using namespace std;
int main()
{
cout << "Hello World!\n" ;
return 0;
}
|
Components of a C++ Code:
- Comments: The two slash(//) signs are used to add comments in a program. It does not have any effect on the behavior or outcome of the program. It is used to give a description of the program you’re writing.
- #include<iostream>: #include is the pre-processor directive that is used to include files in our program. Here we are including the iostream standard file which is necessary for the declarations of basic standard input/output library in C++.
- Using namespace std: All elements of the standard C++ library are declared within a namespace. Here we are using the std namespace.
- int main(): The execution of any C++ program starts with the main function, hence it is necessary to have a main function in your program. ‘int’ is the return value of this function. (We will be studying functions in more detail later).
- {}: The curly brackets are used to indicate the starting and ending point of any function. Every opening bracket should have a corresponding closing bracket.
- cout<<”Hello World!\n”; This is a C++ statement. cout represents the standard output stream in C++. It is declared in the iostream standard file within the std namespace. The text between quotations will be printed on the screen. \n will not be printed, it is used to add a line break. Each statement in C++ ends with a semicolon (;).
- return 0; return signifies the end of a function. Here the function is main, so when we hit return 0, it exits the program. We are returning 0 because we mentioned the return type of the main function as integer (int main). A zero indicates that everything went fine and one indicates that something has gone wrong.
Input and Output in C++
The header file iostream must be included to make use of the input/output (cin/cout) operators.
Standard Output (cout)
- By default, the standard output of a program points at the screen. So with the cout operator and the “insertion” operator (фф) you can print a message onto the screen.
- To print the content of a variable the double quotes are not used.
- The << operator can be used multiple times in a single statement.
- It is possible to combine variables and text:
- The cout operator does not put a line break at the end of the output. So if you want to print two sentences you will have to use the new-line character ( \n ).
- It is possible to use the endl manipulator instead of the new-line character.
Below is the C++ program to illustrate standard output:
C++
#include <iostream>
using namespace std;
int main()
{
cout << "Geeks For Geeks" ;
return 0;
}
|
Standard input (cin)
- In most cases, the standard input device is the keyboard. With the cin and >> operators, it is possible to read input from the keyboard.
- The cin operator will always return the variable type that you use with cin. So if you request an integer you will get an integer and so on. This can cause an error when the user of the program does not return the type that you are expecting. (Example: you ask for an integer and you get a string of characters.)
- The cin operator is also chainable. In this case, the user must give two input values, that are separated by any valid blank separator (tab, space, or new-line).
Below is the C++ program to illustrate standard input:
C++
#include <iostream>
using namespace std;
int main()
{
int a;
cout << "Enter a number" << endl;
cin >> a;
cout << "User entered number " << a << endl;
}
|
Output
Enter a number
User entered number 0
Data types are declarations for variables. This determines the type and size of data associated with variables which are essential to know since different data types occupy the different sizes of memory.
Data Type |
Meaning |
Size (in Bytes) |
int |
Integer |
4 |
float |
Floating-point |
4 |
double |
Double Floating-point |
8 |
char |
Character |
1 |
wchar_t |
Wide Character |
2 |
bool |
Boolean |
1 |
void |
Empty |
0 |
1. int
- This data type is used to store integers.
- It occupies 4 bytes in memory.
- It can store values from -2147483648 to 2147483647.
- Eg. int age = 18
2. float and double
- Used to store floating-point numbers (decimals and exponential)
- The size of a float is 4 bytes and the size of double is 8 bytes.
- Float is used to store up to 7 decimal digits whereas double is used to store up to 15 decimal digits.
- Example:
- float pi = 3.14.
- double distance = 24E8 // 24 x 108
3. char
- This data type is used to store characters.
- It occupies 1 byte in memory.
- Characters in C++ are enclosed inside single quotes ‘ ‘ ASCII code is used to store characters in memory.
- Example: char ch =’a’
4. bool
- This data type has only 2 values true and false.
- It occupies 1 byte in memory.
- True is represented as 1 and false as 0.
- Example: bool flag = false
C++ Type Modifiers
Type modifiers are used to modify the fundamental data types.
Data Type |
Size (in Bytes) |
Meaning |
signed int |
4 |
used for integers (equivalent to int) |
unsigned int |
4 |
can only store positive integers |
short |
2 |
used for small integers (range -32768 to 32767) |
long |
at least 4 |
used for large integers (equivalent to long int) |
long long int |
8 |
used for very large integers (equivalent to long long int). |
unsigned long long(equivalent to unsigned long long int) |
8 |
used for very large positive integers or 0 |
long double |
8 |
used for large floating-point numbers |
signed char |
1 |
used for characters (guaranteed range -127 to 127) |
unsigned char |
1 |
used for characters (range 0 to 255) |
Below is the C++ program to implement Data types:
C++
#include <iostream>
using namespace std;
int main()
{
cout << "Size of bool is: " <<
sizeof ( bool ) <<
" bytes" << endl;
cout << "Size of char is: " <<
sizeof ( char ) <<
" bytes" << endl;
cout << "Size of int is: " <<
sizeof ( int ) <<
" bytes" << endl;
cout << "Size of short int is: " <<
sizeof ( short int ) <<
" bytes" << endl;
cout << "Size of long int is: " <<
sizeof ( long int ) <<
" bytes" << endl;
cout << "Size of signed long int is: " <<
sizeof ( signed long int ) <<
" bytes" << endl;
cout << "Size of unsigned long int is: " <<
sizeof (unsigned long int ) <<
" bytes" << endl;
cout << "Size of float is: " <<
sizeof ( float ) <<
" bytes" << endl;
cout << "Size of double is: " <<
sizeof ( double ) <<
" bytes" << endl;
cout << "Size of wchar_t is: " <<
sizeof ( wchar_t ) << " bytes" << endl;
return 0;
}
|
Output
Size of bool is: 1 bytes
Size of char is: 1 bytes
Size of int is: 4 bytes
Size of short int is: 2 bytes
Size of long int is: 8 bytes
Size of signed long int is: 8 bytes
Size of unsigned long int is: 8 bytes
Size of float is: 4 bytes
Size of double is: 8 bytes
Size of wchar_t is: 4 bytes
These are the data types that are derived from fundamental (or built-in) data types. For example arrays, pointers, function, reference.
Below is the C++ program to implement derived data types:
C++
#include <iostream>
using namespace std;
int sum( int n1, int n2)
{
return n1 + n2;
}
int main()
{
int arr[5] = {2, 4, 6, 8, 10};
cout << "Array elements are : " ;
for ( int i = 0; i < 5; i++)
{
cout << arr[i] << " " ;
}
int a = 10;
int * p;
p = &a;
cout << "\n" << "Value of a is " <<
a << endl;
cout << "Value of p is " << p <<
endl;
cout << "Value of *p is " << *p <<
endl;
cout << "Sum is:" << sum(5, 2) <<
endl;
int x = 10;
int & ref = x;
ref = 30;
cout << "x = " << x << endl;
x = 40;
cout << "ref = " << ref << endl;
return 0;
}
|
Output
Array elements are : 2 4 6 8 10
Value of a is 10
Value of p is 0x7ffd0ec3c084
Value of *p is 10
Sum is:7
x = 30
ref = 40
These are the data types that are defined by the user themselves.
For example, class, structure, union, enumeration, etc.
Below is the C++ program to implement class user-defined data types:
C++
#include <iostream>
using namespace std;
class GFG
{
public :
string gfg;
void print()
{
cout << "String is: " <<
gfg;
}
};
int main()
{
GFG obj1;
obj1.gfg = "GeeksForGeeks is the best Technical Website" ;
obj1.print();
return 0;
}
|
Output
String is: GeeksForGeeks is the best Technical Website
Below is the C++ program to implement structure user-defined data type:
C++
#include <iostream>
using namespace std;
struct Geeks
{
int a, b;
};
int main()
{
struct Geeks arr[10];
arr[0].a = 30;
arr[0].b = 40;
cout << arr[0].a << ", " <<
arr[0].b;
return 0;
}
|
Below is the C++ program to implement union user-defined data type:
C++
#include <iostream>
using namespace std;
union gfg
{
int a, b;
};
int main()
{
union gfg g;
g.a = 5;
cout << "After changing a = 5:" <<
endl << "a = " << g.a <<
", b = " << g.b << endl;
g.b = 15;
cout << "After changing b = 15:" <<
endl << "a = " << g.a <<
", b = " << g.b << endl;
return 0;
}
|
Output
After changing a = 5:
a = 5, b = 5
After changing b = 15:
a = 15, b = 15
Below is the C++ program to implement enumeration data type:
C++
#include <iostream>
using namespace std;
enum season
{
Autmn, Spring, Winter, Summer
};
int main()
{
enum season month;
month = Summer;
cout << month;
return 0;
}
|
Operators are nothing but symbols that tell the compiler to perform some specific operations. Operators are of the following types –
1. Arithmetic Operators
Arithmetic operators perform some arithmetic operations on one or two operands. Operators that operate on one operand are called unary arithmetic operators and operators that operate on two operands are called binary arithmetic operators.
- +,-,*,/,% are binary operators.
- ++, — are unary operators.
Suppose: A=5 and B=10
Operator |
Operation |
Example |
+ |
Adds two operands |
A+B = 15 |
– |
Subtracts right operand from the left operand |
B-A = 5 |
* |
Multiplies two operands |
A*B = 50 |
/ |
Divides left operand by right operand |
B/A = 2 |
% |
Finds the remainder after integer division |
B%A = 0 |
++ |
Increment |
A++ = 6 |
— |
Decrement |
A– = 4 |
Below is the C++ program to implement arithmetic operators:
C++
#include <iostream>
using namespace std;
int main()
{
int a = 5;
int b = 10;
cout << "Sum of a and b is" <<
" " << a + b << endl;
cout << "Difference of b and a is" <<
" " << b - a << endl;
cout << "Multiplication of a and b is" <<
" " << a * b << endl;
cout << "Division of b and a is" <<
" " << b / a << endl;
cout << "Modulo of b and a is" <<
" " << b % a << endl;
return 0;
}
|
Output
Sum of a and b is 15
Difference of b and a is 5
Multiplication of a and b is 50
Division of b and a is 2
Modulo of b and a is 0
- Pre-incrementer: It increments the value of the operand instantly.
- Post-incrementer: It stores the current value of the operand temporarily and only after that statement is completed, the value of the operand is incremented.
- Pre-decrementer: It decrements the value of the operand instantly.
- Post-decrementer: It stores the current value of the operand temporarily and only after that statement is completed, the value of the operand is decremented.
Below is the C++ program to implement Post-incrementer and Post-decrementer:
C++
#include <iostream>
using namespace std;
int main()
{
int a = 10;
int b;
int c;
b = a++;
cout << a << " " <<
b << endl;
c = a--;
cout << a << " " <<
c << endl;
return 0;
}
|
Below is the C++ program to implement Pre-incrementer and Pre-decrementer:
C++
#include <iostream>
using namespace std;
int main()
{
int a = 10;
int b;
int c;
b = ++a;
cout << a << " " <<
b << endl;
c = --a;
cout << a << " " <<
c << endl;
return 0;
}
|
2. Relational Operators
Relational operators define the relation between 2 entities. They give a boolean value as result i.e true or false.
Suppose: A=5 and B=10
Operator |
Operation |
Example |
== |
Gives true if two operands are equal |
A==B is not true |
!= |
Gives true if two operands are not equal |
A!=B is true |
> |
Gives true if the left operand is more than the right operand |
A>B is not true |
< |
Gives true if the left operand is less than the right operand |
A<B is true |
>= |
Gives true if the left operand is more than the right operand or equal to it |
A>=B is not true |
<= |
Gives true if the left operand is less than the right operand or equal to it |
A<=B is true |
Below is the C++ program to implement relational operators:
C++
#include <iostream>
using namespace std;
int main()
{
int a = 5;
int b = 10;
if (a == b)
{
cout << "a==b is not equal to true" <<
endl;
}
if (a != b)
{
cout << "a != b is true" <<
endl;
}
if (a > b)
{
cout << "a > b is not true" <<
endl;
}
if (a < b)
{
cout << "a < b is true" << endl;
}
if (a >= b)
{
cout << "a >= b is not true" <<
endl;
}
if (a <= b)
{
cout << "a <= b is true" <<
endl;
}
return 0;
}
|
Output
a != b is true
a < b is true
a <= b is true
3. Logical Operators
Logical operators are used to connecting multiple expressions or conditions together. We have 3 basic logical operators.
Suppose: A=0 and B=1
Operator |
Operation |
Example |
&& |
AND operator. Gives true if both operands are non-zero |
(A && B) is false |
|| |
OR operator. Gives true if at least one of the two operands are non-zero |
(A || B) is true |
! |
NOT operator. Reverse the logical state of the operand |
!A is true |
Below is the C++ program to implement the logical operators:
C++
#include <iostream>
using namespace std;
int main()
{
int a = 0;
int b = 1;
if (a && b)
{
cout << "a && b is false" <<
endl;
}
if (a || b)
{
cout << "a || b is true" <<
endl;
}
if (!a)
{
cout << "!a is true" <<
endl;
}
return 0;
}
|
Output
a || b is true
!a is true
Example:
- If we need to check whether a number is divisible by both 2 and 3, we will use the AND operator: (num%2==0) && num(num%3==0)
- If this expression gives true value then that means that num is divisible by both 2 and 3. (num%2==0) || (num%3==0)
- If this expression gives true value then that means that num is divisible by 2 or 3 or both.
4. Bitwise Operators
Bitwise operators are the operators that operate on bits and perform bit-by-bit operations.
Suppose: A = 5(0101) and B = 6(0110)
Operator |
Operation |
Example |
& |
Binary AND. Copies a bit to the result if it exists in both operands. |
0101
& 0110
———-
0100
|
| |
Binary OR. Copies a bit if it exists in either operand. |
0101
| 0110
———
0111
|
^ |
Binary XOR. Copies the bit if it is set in one operand but not both. |
0101
^ 0110
———-
0011
|
~ |
Binary One’s Complement. Flips the bit. |
~0101 => 1010 |
<< |
Binary Left Shift. The left operand’s bits are moved left by the number of places specified by the right operand |
4 (0100)
4 << 1
= 1000 = 8
|
>> |
Binary Right Shift Operator. The left operand’s bits are moved right by the number of places specified by the right operand. |
4 >> 1
= 0010 = 2
|
If shift operator is applied on a number N then,
- N<<a will give a result N*2^a
- N>>a will give a result N/2^a
Below is the C++ program to implement bitwise operators:
C++
#include <iostream>
using namespace std;
int main()
{
int a = 5;
int b = 6;
cout << (a & b) << endl;
cout << (a | b) << endl;
cout << (a ^ b) << endl;
cout << (a << 1) << endl;
cout << (a >> 1) << endl;
return 0;
}
|
5. Assignment Operators
Operator |
Operation |
Example |
= |
Assigns the value of right operand to left operand. |
A=B will put the value of B in A |
+= |
Adds the right operand to the left operand and assigns the result of the left operand. |
A+=B means A=A+B |
-= |
Subtracts the right operand from the left operand and assigns the result to the left operand. |
A-=B means A=A-B |
*= |
Multiplies the right operand with the left operand and assigns the result to the left operand. |
A*=B means A=A*B |
/= |
Divides left operand with the right operand and assign the result to the left operand. |
A/=B means A=A/B |
Below is the C++ program to implement assignment operator:
C++
#include <iostream>
using namespace std;
int main()
{
int a = 5;
cout << a << endl;
a += 2;
cout << a << endl;
a -= 2;
cout << a << endl;
a *= 2;
cout << a << endl;
a /= 2;
cout << a << endl;
return 0;
}
|
6. Misc Operators
Operator |
Operation |
Example |
sizeof() |
Returns the size of the variable. |
If a is an integer then sizeof(a) will return 4. |
Condition?X:Y |
Conditional operator. If the condition is true, then returns the value of X or else the value of Y. |
A+=B means A=A+B |
Cast |
The casting operator convert one data type to another |
int(4.350) would return 4. |
Comma(,) |
Comma operator causes a sequence of operations to be performed. The value of the entire comma expression is the value of the last expression of the comma-separated list. |
|
Below is the C++ program to implement miscellaneous operator:
C++
#include <iostream>
using namespace std;
int main()
{
int a = 4;
cout << sizeof (a) << endl;
int x = 5;
int y = 8;
int min = x < y ? x : y;
cout << "Minimum value from x and y is " <<
min << endl;
cout << int (4.350) << endl;
int d = 2, b = 3, c = 4;
cout << d << " " << b << " " <<
c << " " << endl;
return 0;
}
|
Output
4
Minimum value from x and y is 5
4
2 3 4
Precedence of Operators
Category |
Operator |
Associativity |
Postfix |
() [] -> . ++ — |
Left to right |
Unary |
+ – ! ~ ++ __ (type) * & sizeof |
Right to left |
Multiplicative |
* / % |
Left to right |
Additive |
+ – |
Left to right |
Shift |
<< >> |
Left to right |
Relational |
< <= > >= |
Left to right |
Equality |
== != |
Left to right |
Bitwise AND |
& |
Left to right |
Bitwise XOR |
^ |
Left to right |
Bitwise OR |
| |
Left to right |
Logical AND |
&& |
Left to right |
Logical OR |
|| |
Left to right |
Conditional |
?: |
Right to left |
Assignment |
= += -= /= %= >>= <<= &= ^= |= |
Right to left |
Comma |
, |
Left to right |
1. if/else
The if block is used to specify the code to be executed if the condition specified in it is true, the else block is executed otherwise. Below is the C++ program to implement if-else:
C++
#include <iostream>
using namespace std;
int main()
{
int age;
cin >> age;
if (age >= 18)
{
cout << "You can vote." ;
}
else
{
cout << "Not eligible for voting." ;
}
return 0;
}
|
Output
Not eligible for voting.
2. else if
To specify multiple if conditions, we first use if and then the consecutive statements use else if. Below is the C++ program to implement else if:
C++
#include <iostream>
using namespace std;
int main()
{
int x, y;
cin >> x >> y;
if (x == y)
{
cout << "Both the numbers are equal" ;
}
else if (x > y)
{
cout << "X is greater than Y" ;
}
else
{
cout << "Y is greater than X" ;
}
return 0;
}
|
Output
Y is greater than X
3. nested if
To specify conditions within conditions we make the use of nested ifs. Below is the C++ program to implement nested if:
C++
#include <iostream>
using namespace std;
int main()
{
int x, y;
cin >> x >> y;
if (x == y)
{
cout << "Both the numbers are equal" ;
}
else
{
if (x > y)
{
cout << "X is greater than Y" ;
}
else
{
cout << "Y is greater than X" ;
}
}
return 0;
}
|
Output
Y is greater than X
4. Switch Statement
Switch case statements are a substitute for long if statements that compare a variable to multiple values. After a match is found, it executes the corresponding code of that value case.
Syntax:
switch (n)
{
case 1: // code to be executed if n == 1;
break;
case 2: // code to be executed if n == 2;
break;
default: // code to be executed if n doesn't match any of the above cases
}
- The variable in the switch should have a constant value.
- The break statement is optional. It terminates the switch statement and moves control to the next line after the switch.
- If the break statement is not added, the switch will not get terminated and it will continue onto the next line after the switch.
- Every case value should be unique.
- The default case is optional. But it is important as it is executed when no case value could be matched.
Basic Calculator Using Switch Statement:
C++
#include <iostream>
using namespace std;
int main()
{
int n1, n2;
char op;
cout << "Enter 2 numbers: " ;
cin >> n1 >> n2;
cout << "Enter operand: " ;
cin >> op;
switch (op)
{
case '+' :
cout << n1 + n2 << endl;
break ;
case '-' :
cout << n1 - n2 << endl;
break ;
case '*' :
cout << n1 * n2 << endl;
break ;
case '/' :
cout << n1 / n2 << endl;
break ;
case '%' :
cout << n1 % n2 << endl;
break ;
default :
cout << "Operator not found!" <<
endl;
break ;
}
return 0;
}
|
Output
Enter 2 numbers: Enter operand: Operator not found!
A loop is used for executing a block of statements repeatedly until a particular condition is satisfied. A loop consists of an initialization statement, a test condition, and an increment statement.
1. for loop
The syntax of the for loop is
for (initialization; condition; update)
{
// body of-loop
}
Below is the C++ program to implement for loop:
C++
#include <iostream>
using namespace std;
int main()
{
for ( int i = 1; i <= 5; i++)
{
cout << i << " " ;
}
return 0;
}
|
Explanation:
The for loop is initialized by the value 1, the test condition is i<=5 i.e the loop is executed till the value of i remains lesser than or equal to 5. In each iteration, the value of i is incremented by one by doing i++.
2. while loop
The syntax for while loop is
while (condition)
{
// body of the loop
}
Below is the C++ program to implement while loop:
C++
#include <iostream>
using namespace std;
int main()
{
int i = 1;
while (i <= 5)
{
cout << i << " " ;
i++;
}
return 0;
}
|
Explanation:
The while loop is initialized by the value 1, the test condition is i<=5 i.e the loop is executed till the value of i remains lesser than or equal to 5. In each iteration, the value of i is incremented by one by doing i++.
3. do͙ while loop
The syntax for while loop is
do {
// body of loop;
}
while (condition);
Below is the C++ program to implement do-while loop:
C++
#include <iostream>
using namespace std;
int main()
{
int i = 1;
do {
cout << i << " " ;
i++;
} while (i <= 5);
return 0;
}
|
Explanation:
The do-while loop variable is initialized by the value 1, in each iteration, the value of i is incremented by one by doing i++, the test condition is i<=5 i.e the loop is executed till the value of i remains lesser than or equal to 5. Since the testing condition is checked only once the loop has already run so a do-while loop runs at least once.
Jumps in Loops
Jumps in loops are used to control the flow of loops. There are two statements used to implement jump in loops – Continue and Break. These statements are used when we need to change the flow of the loop when some specified condition is met.
1. Continue
The continue statement is used to skip to the next iteration of that loop. This means that it stops one iteration of the loop. All the statements present after the continue statement in that loop are not executed.
Below is the C++ program to implement the Continue statement:
C++
#include <iostream>
using namespace std;
int main()
{
int i;
for (i = 1; i <= 20; i++)
{
if (i % 3 == 0)
{
continue ;
}
cout << i << endl;
}
}
|
Output
1
2
4
5
7
8
10
11
13
14
16
17
19
20
Explanation:
In this for loop, whenever i is a number divisible by 3, it will not be printed as the loop will skip to the next iteration due to the continue statement. Hence, all the numbers except those which are divisible by 3 will be printed.
2. Break
The break statement is used to terminate the current loop. As soon as the break statement is encountered in a loop, all further iterations of the loop are stopped and control is shifted to the first statement after the end of the loop.
Below is the C++ program to implement the break statement:
C++
#include <iostream>
using namespace std;
int main()
{
int i;
for (i = 1; i <= 20; i++)
{
if (i == 11)
{
break ;
}
cout << i << endl;
}
}
|
Output
1
2
3
4
5
6
7
8
9
10
Explanation:
In this loop, when i becomes equal to 11, the for loop terminates due to break statement, Hence, the program will print numbers from 1 to 10 only.
Similar Reads
C++ Basic Syntax
Syntax refers to the rules and regulations for writing statements in a programming language. They can also be viewed as the grammatical rules defining the structure of a programming language. The C++ language also has its syntax for the functionalities it provides. Different statements have differen
4 min read
C++ Programming Basics
C++ is a general-purpose programming language and is widely used nowadays for competitive programming. It has imperative, object-oriented, and generic programming features. C++ runs on lots of platforms like Windows, Linux, Unix, Mac, etc. Before explaining the basics of C++, we would like to clarif
9 min read
C++ Arrays
In C++, an array is a derived data type that is used to store multiple values of similar data types in a contiguous memory location. Each element can be accessed using its index (position starting from 0). Create ArrayIn C++, we can create/declare an array by simply specifying the data type first an
11 min read
Basic Input / Output in C++
In C++, input and output are performed in the form of a sequence of bytes or more commonly known as streams. Input Stream: If the direction of flow of bytes is from the device (for example, Keyboard) to the main memory then this process is called input.Output Stream: If the direction of flow of byte
5 min read
C++ vs C#
C++ and C# both are commonly used programming languages and came up with different powerful features used in different use cases. In this article, we are going to explore the common differences between these two programming languages based on their distinct features, use cases, and ecosystems. C# is
7 min read
C++ Pointer Arithmetic
In C++, pointer arithmetic means performing arithmetic operations on pointers. It refers to the operations that are valid to perform on pointers. Following are the arithmetic operations valid on pointers in C++: Table of Content Incrementing and Decrementing Pointer in C++Addition of Constant to Poi
7 min read
C++ Comments
Comments in C++ are meant to explain the code as well as to make it more readable. Their purpose is to provide information about code lines. When testing alternative code, they can also be used to prevent execution of some part of the code. Programmers commonly use comments to document their work. E
3 min read
C++ Arithmetic Operators
Arithmetic Operators in C++ are used to perform arithmetic or mathematical operations on the operands (generally numeric values). An operand can be a variable or a value. For example, â+â is used for addition, '-' is used for subtraction, '*' is used for multiplication, etc. Let's take a look at an
4 min read
C++ Variables
In C++, variable is a name given to a memory location. It is the basic unit of storage in a program. The value stored in a variable can be accessed or changed during program execution. Creating a VariableCreating a variable and giving it a name is called variable definition (sometimes called variabl
5 min read
C++ Functions - Pass By Reference
Several ways exist in which data (or variables) could be sent as an argument to a function. Two of the common ones are Passing by Value and Passing by Reference. Passing by reference allows a function to modify a variable without creating a copy. We have to declare reference variables. The memory lo
5 min read