C++ Cheatsheet: Basic Level
Welcome to the C++ Cheatsheet designed to enhance your proficiency in C++ programming. This is structured into four levels: Basic, Intermediate, Advanced, and Expert. Each level introduces you to progressively sophisticated C++ concepts and practices. The examples provided in each level are diverse, ensuring a comprehensive understanding of C++.
01 Basic Level
The Basic Level covers fundamental C++ concepts, including variable declarations, control structures, and basic functions. It provides a solid foundation for beginners and serves as a refresher for those familiar with C++ basics.
1 Hello World The “Hello, World!” program in C++ is often the first program written by developers learning a new language. Its simplicity allows beginners to focus on understanding basic syntax, structure, and how to produce program output. When compiled and run, this program prints “Hello, World!” to the console, confirming that the development environment is set up correctly and the basic syntax is understood.
#include <iostream>
int main() {
std::cout << "Hello, World!" << std::endl;
return 0;
}
Description:
#include <iostream>
: This line is a preprocessor directive that tells the compiler to include the input/output stream library (iostream
). It provides functionality for handling input and output operations.int main() { }
: In C++, every program must have amain
function, which is the entry point of the program. The execution of the program begins from themain
function.std::cout << "Hello, World!" << std::endl;
: This line outputs the text "Hello, World!" to the console.std::cout
is the standard output stream, and<<
is the stream insertion operator used to output data.std::endl
inserts a newline character and flushes the output buffer.return 0;
: Indicates the successful completion of the program. The0
here is a convention to indicate that the program terminated without errors.
2 Variables & Input In C++, a variable is a named storage location that can hold data. Variables must be declared before they are used, specifying their data type. In your provided code:
#include <iostream>
int main() {
int age;
std::cout << "Enter your age: ";
std::cin >> age;
std::cout << "Your age is: " << age << std::endl;
return 0;
}
Description:
int age;
: Declares an integer variable namedage
.std::cout << "Enter your age: ";
: Outputs the prompt "Enter your age: " to the console.std::cin >> age;
: Accepts input from the user and stores it in the variableage
. The>>
operator is used withstd::cin
for input.std::cout << "Your age is: " << age << std::endl;
: Outputs the text "Your age is: " followed by the value stored in theage
variable to the console.return 0;
: Indicates successful program execution.
Note: So, when you run this program, it prompts the user to enter their age, reads the input, and then displays “Your age is: “ followed by the entered age. The user’s input is stored in the age
variable, allowing the program to use and display it.
3 Arithmetic operations involve performing mathematical calculations on numeric data types. The common arithmetic operations include addition (+
), subtraction (-
), multiplication (*
), and division (/
). Your provided code demonstrates the use of these operations:
#include <iostream>
int main() {
int a = 5, b = 3;
// Addition
std::cout << "Sum: " << a + b << std::endl;
// Subtraction
std::cout << "Difference: " << a - b << std::endl;
// Multiplication
std::cout << "Product: " << a * b << std::endl;
// Division
std::cout << "Quotient: " << a / b << std::endl;
return 0;
}
Description:
int a = 5, b = 3;
: Initializes two integer variables,a
andb
, with values 5 and 3, respectively.std::cout << "Sum: " << a + b << std::endl;
: Calculates and outputs the sum ofa
andb
.std::cout << "Difference: " << a - b << std::endl;
: Calculates and outputs the difference ofa
andb
.std::cout << "Product: " << a * b << std::endl;
: Calculates and outputs the product ofa
andb
.std::cout << "Quotient: " << a / b << std::endl;
: Calculates and outputs the quotient ofa
divided byb
.
Note: The program demonstrates basic arithmetic operations, displaying the results for addition, subtraction, multiplication, and division. The values are calculated and then printed to the console. Note that in C++, integer division truncates the decimal part, so the result of a / b
in this case would be 1
.
4 Conditional statements in C++ allow you to control the flow of your program based on certain conditions. The most common conditional statement is the if
statement, which evaluates a condition and executes a block of code if the condition is true. The else if
and else
statements can be used to specify additional conditions.
#include <iostream>
int main() {
int num;
// Prompt user to enter a number
std::cout << "Enter a number: ";
std::cin >> num;
// Check if the entered number is greater than 0
if (num > 0) {
std::cout << "Positive number." << std::endl;
}
// If not, check if the number is less than 0
else if (num < 0) {
std::cout << "Negative number." << std::endl;
}
// If neither condition is true, the number must be 0
else {
std::cout << "Zero." << std::endl;
}
return 0;
}
Description:
int num;
: Declares an integer variable namednum
to store the user-inputted number.std::cout << "Enter a number: ";
: Outputs a prompt asking the user to enter a number.std::cin >> num;
: Takes user input and stores it in thenum
variable.if (num > 0)
: Checks ifnum
is greater than 0.std::cout << "Positive number." << std::endl;
: If the condition in (4) is true, this line is executed, indicating that the number is positive.else if (num < 0)
: If the condition in (4) is false, checks ifnum
is less than 0.std::cout << "Negative number." << std::endl;
: If the condition in (6) is true, this line is executed, indicating that the number is negative.else
: If neither of the above conditions is true, this block is executed.std::cout << "Zero." << std::endl;
: Outputs that the number is zero.
Note: This program demonstrates the use of conditional statements to determine whether a given number is positive, negative, or zero based on user input.
5 Loops — While loop in C++ are used to repeatedly execute a block of code until a certain condition is met. The while
loop is one such construct, where the code within the loop is executed as long as the specified condition is true.
#include <iostream>
int main() {
int i = 1;
// The while loop continues as long as the condition (i <= 5) is true
while (i <= 5) {
// Output the current value of i followed by a space
std::cout << i << " ";
// Increment the value of i
i++;
}
// Output a newline character after the loop
std::cout << std::endl;
// Return 0 to indicate successful execution
return 0;
}
Description:
int i = 1;
: Initializes an integer variablei
with the value 1. This variable will be used as a counter in the loop.while (i <= 5)
: This is the condition for thewhile
loop. The loop will continue executing as long as the value ofi
is less than or equal to 5.std::cout << i << " ";
: Outputs the current value ofi
followed by a space.i++;
: Increments the value ofi
by 1 in each iteration of the loop.- The loop repeats steps 3–4 until the condition in (2) becomes false.
std::cout << std::endl;
: Outputs a newline character after the loop, creating a new line in the console.return 0;
: Indicates successful program execution.
Note: This specific program demonstrates the use of a while
loop to output the numbers from 1 to 5, separated by spaces. The loop continues until the value of i
exceeds 5.
6 Loops-For Loop The for
loop in C++ is another type of loop that is commonly used for iterative tasks. It consists of three parts: initialization, condition, and iteration expression.
#include <iostream>
int main() {
// The for loop is initialized with int i = 1;
// The loop continues as long as the condition i <= 5 is true
// The expression i++ is executed after each iteration
for (int i = 1; i <= 5; i++) {
// Output the current value of i followed by a space
std::cout << i << " ";
}
// Output a newline character after the loop
std::cout << std::endl;
// Return 0 to indicate successful execution
return 0;
}
Description:
for (int i = 1; i <= 5; i++)
: This is thefor
loop construct.
int i = 1;
: Initializes an integer variablei
with the value 1.i <= 5
: This is the condition for the loop. The loop will continue executing as long as the value ofi
is less than or equal to 5.i++
: This expression is executed after each iteration of the loop, incrementing the value ofi
by 1.
std::cout << i << " ";
: Outputs the current value ofi
followed by a space in each iteration.- The loop repeats steps 2 (output) and 1 (increment) until the condition in the
for
statement becomes false. std::cout << std::endl;
: Outputs a newline character after the loop, creating a new line in the console.return 0;
: Indicates successful program execution.
Note: This specific program demonstrates the use of a for
loop to output the numbers from 1 to 5, separated by spaces. The loop initialization, condition, and iteration are all specified within the for
statement.
7 Arrays In C++, an array is a collection of elements of the same data type stored in contiguous memory locations. Each element in the array is identified by an index or a subscript. The first element is at index 0, the second at index 1, and so on.
Here are some key points about arrays in C++:
Declaration: To declare an array, you specify the data type of its elements, followed by the array name and the size of the array in square brackets. For example:
int numbers[5];
// Declares an integer array with a size of 5
Initialization: You can initialize an array at the time of declaration by providing a comma-separated list of values enclosed in curly braces:
int numbers[5] = {1, 2, 3, 4, 5};
// Initializes an array with values 1, 2, 3, 4, and 5
Accessing Elements: Elements in an array are accessed using square brackets and the index of the element. Array indices start from 0. For example:
int thirdElement = numbers[2];
// Accesses the third element (index 2) of the array
Size: The size of an array is fixed at the time of declaration and cannot be changed during the program’s execution.
Contiguous Memory: The elements in an array are stored in contiguous memory locations. This property allows for efficient memory access and iteration.
Looping Through Arrays: You can use loops, such as for
or while
, to iterate through the elements of an array.
#include <iostream>
int main() {
// Declare an integer array named 'numbers' with a size of 5 and initialize it with values.
int numbers[5] = {1, 2, 3, 4, 5};
// Output the third element (index 2) of the array.
std::cout << "Third element: " << numbers[2] << std::endl;
// Return 0 to indicate successful execution.
return 0;
}
Description:
int numbers[5] = {1, 2, 3, 4, 5};
: Declares an array namednumbers
that can hold integers. It is initialized with values 1, 2, 3, 4, and 5. The size of the array is specified as 5.std::cout << "Third element: " << numbers[2] << std::endl;
: Outputs the text "Third element: " followed by the value stored in the third element of the array. In C++, array indices start from 0, sonumbers[2]
refers to the third element.return 0;
: Indicates successful program execution.
Note: In this program, the array numbers
is created, and the third element (index 2) is accessed and printed to the console. Arrays in C++ provide a way to store multiple values of the same data type in a single variable.
8 Functions In C++, a function is a reusable block of code that performs a specific task. Functions help in modularizing code, making it easier to understand, maintain, and debug.
#include <iostream>
int add(int a, int b) {
return a + b;
}
int main() {
std::cout << "Sum: " << add(3, 4) << std::endl;
return 0;
}
Description:
add
is a function that takes two parameters (a
andb
) of typeint
and returns anint
.- Inside the function body, it calculates the sum of
a
andb
using the+
operator and returns the result. - The
main
function is the entry point of the program. - It calls the
add
function with arguments3
and4
. - The result of the
add
function is printed to the console usingstd::cout
. std::endl
is used to insert a newline character and flush the output buffer.- The program calculates the sum of 3 and 4 using the
add
function and prints the result, which is7
.
Note: In summary, the code defines a simple function add
that adds two integers and demonstrates its usage in the main
function to calculate and print the sum of 3 and 4.
9 Strings In C++, a std::string
is a standard library class that represents a sequence of characters. It provides a convenient way to work with text data.
#include <iostream>
#include <string>
int main() {
std::string greeting = "Hello, ";
std::string name = "John";
std::cout << greeting + name << std::endl;
return 0;
}
Description:
- Two
std::string
variables,greeting
andname
, are declared and initialized with strings. greeting
is assigned the value "Hello, ".name
is assigned the value "John".- The
+
operator is used for string concatenation. It combines the contents ofgreeting
andname
. - The result, “Hello, John”, is printed to the console using
std::cout
. std::endl
is used to insert a newline character and flush the output buffer.- The program concatenates the greeting and the name and prints the combined string.
Note: In summary, the code demonstrates the use of std::string
for handling strings in C++. It initializes two string variables, concatenates them, and prints the result.
10 Pointers In C++, a pointer is a variable that stores the memory address of another variable.
#include <iostream>
int main() {
int num = 42;
int *ptr = #
std::cout << "Value at pointer: " << *ptr << std::endl;
return 0;
}
Description:
- An integer variable
num
is declared and assigned the value42
. - A pointer variable
ptr
is declared, which is capable of storing the memory address of an integer. &num
retrieves the memory address of the variablenum
, and this address is assigned to the pointerptr
.- The
*
operator is used to dereference the pointer, accessing the value stored at the memory address it points to. - The value at the memory address pointed to by
ptr
(which is the value ofnum
, i.e.,42
) is printed to the console. - The program prints the value stored at the memory address pointed to by the pointer.
Note: In summary, the code demonstrates the concept of pointers in C++, showing how to declare a pointer, assign it the memory address of a variable, and then use it to access the value stored at that memory address.
11 Structures In C++, a structure is a user-defined data type that allows you to group together variables of different data types under a single name.
#include <iostream>
// Define a structure named Point
struct Point {
int x; // Member variable for x-coordinate
int y; // Member variable for y-coordinate
};
int main() {
// Declare an instance of the Point structure
Point p;
// Assign values to the member variables of the Point structure
p.x = 3;
p.y = 5;
// Print the values of the Point structure
std::cout << "Point: (" << p.x << ", " << p.y << ")" << std::endl;
return 0;
}
Description:
- A structure named
Point
is defined, which contains two member variables:x
for the x-coordinate andy
for the y-coordinate. - An instance of the
Point
structure is declared using the variable namep
. - Values are assigned to the member variables of the
Point
structure for the instancep
. - The values of the
Point
structure (p.x
andp.y
) are printed to the console in the format "Point: (x, y)". - The program outputs the coordinates of the point stored in the
Point
structure.
Note: In summary, the code demonstrates the use of structures in C++ to represent a point with x and y coordinates. It shows how to define a structure, declare an instance of it, assign values to its members, and print the structure’s values.
12 Enums, short for enumerations, are a user-defined data type in C++ used to assign names to integral constants, making the code more readable and maintainable. Enums create a set of named integer values, and each name corresponds to a unique integer value. The elements of an enum are listed inside curly braces.
#include <iostream>
// Define an enumeration named Day
enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY };
int main() {
// Declare a variable 'today' of type 'Day' and assign the value 'WEDNESDAY'
Day today = WEDNESDAY;
// Print the value of 'today'
std::cout << "Today is day " << today << std::endl;
return 0;
}
Description:
- An enumeration named
Day
is defined, listing the days of the week. - A variable named
today
of typeDay
is declared and assigned the valueWEDNESDAY
. - The value of the
today
variable is printed to the console. - The program outputs the assigned integer value (
WEDNESDAY
is assigned the value 3) for thetoday
variable.
Note: In summary, the code demonstrates the use of enums in C++ to represent days of the week. The enum is defined, a variable is declared with an enum type, and the value of the enum variable is printed. The output reflects the integer value assigned to the enum constant WEDNESDAY
.
13 File handling-Writing is an essential aspect of programming, allowing you to interact with files on your system. In C++, the <fstream>
header provides classes and functions for file handling. Specifically, ofstream
(output file stream) is used for writing to files.
#include <iostream>
#include <fstream>
int main() {
// Create an output file stream and open a file named "example.txt"
std::ofstream file("example.txt");
// Write the string "Hello, File!" to the file
file << "Hello, File!";
// Close the file
file.close();
return 0;
}
Description:
- An object of type
std::ofstream
namedfile
is created. - The constructor is used to open a file named “example.txt” in output mode. If the file doesn’t exist, it will be created; if it exists, its contents will be truncated.
- The string “Hello, File!” is written to the file using the stream insertion (
<<
) operator. - The
close
method is called to close the file after writing. - Closing the file is important to ensure that all data is flushed and the file resources are released.
- The program returns 0 to indicate successful execution.
Note: In summary, the code demonstrates how to open a file for writing using ofstream
, write a string to the file, and then close the file. After running this program, you will find a file named "example.txt" in the same directory as your executable, containing the text "Hello, File!".
14 File Handling-Reading
#include <iostream>
#include <fstream>
#include <string>
int main() {
std::ifstream file("example.txt");
std::string content;
getline(file, content);
std::cout << "File Content: " << content << std::endl;
file.close();
return 0;
}
15 Dynamic Memory Allocation
#include <iostream>
int main() {
int *arr = new int[5];
for (int i = 0; i < 5; i++) {
arr[i] = i + 1;
}
std::cout << "Dynamic Array: ";
for (int i = 0; i < 5; i++) {
std::cout << arr[i] << " ";
}
delete[] arr;
std::cout << std::endl;
return 0;
}
This concludes the Basic level of the C++ cheatsheet.
Note: Please check out my C++ cheatsheet if you have not read it yet.
01 c++ Cheatsheet: Basic Level
02 c++ Cheatsheet: Intermediate Level