#37 Using Variables, Declaring Constants
Variables are tools which help programmers temporarily store data for a certain amount of time. Constants are tools which help programmers to define artifacts that are not allowed to change or make changes.
To understand variables we have to first take a look at memory addressing in brief. All computers contain a MCU and a certain amount of temporary memory called RAM In addition may devices also contains a permanent storage memory called ROM. The MCU executes the program and in doing so it utilizes the RAM to fetch binary code to be executed as well as the data associated with it.
RAM uses addresses which allow us to point to blocks of memory stored within itself.
When programming in C++ we define variables to store those variables. Below are two examples:
VariableType VariableName;
e.g int number;
VariableType VariableName = InitialValue;
e.g int number = 0;
The variable type attribute tells the compiler the nature of data the variable can store.
Below is an example of declaring and initializing multiple variables of a type.
int first = 0, second = 1, result = 16;
Data stored in variables is stored in RAM. This data will be lost once the application terminates unless the program is told to save the data to a storage medium such as a hard disk.
If variables are declared outside the scope of the function function()
instead of with in it, these variables will be considered global variables.
Variable types:bool
char
unsigned short int
short int
unsigned long int
long int
unsigned long long
long long
int(16 bit)
int(32 bit)
unsigned int(16 bit)
unsigned int(32 bit)
float
double
C++ allows us to substitute variable types to something that the programmer may find a bit more convenient . The keyword typedef can be used for this functionality. Below is an example where the programmer wants to call an unsigned int a descriptive STRICTLY_POSITIVE_INTEGER.
typedef unsigned int STRICTLY_POSITIVE_INTEGER;
STRICTLY_POSITIVE_INTEGER exampleNumber = 6570;
Constants are like variables in C++ except their value can’t be changed. Constants also occupy space in memory just like variables however this space cannot be overwritten.
Constants in C++ can be:
- Literal constants.
- Declared constants using the const keyword.
- Constant expressions using the constexpr keyword.
- Enumerated constants using the enum keyword.
- Defined constants that are not recommended and deprecated.
Enumerations comprise a set of constants called enumerators. This is used when you need a type of variable whose values are restricted to a certain set defined by the programmer..
Below is an example of using Enumerations:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#include <iostream> using namespace std; enum RainbowColors { Violet = 0, Indigo, Blue, Green, Yellow, Orange, Red }; int main() { RainbowColors Color = Blue; cout << Color << endl; return 0; } |
Defining constants using #define
#define pi 3.14
#define is a preprocessor macro. So once defined all mentions of pi henceforth will be replaced by 3.14 This is a text replacement.