C++ Variable Initialization
Variable initialization in C++ means assigning an initial value to a variable at the time of its declaration. Proper initialization helps avoid undefined behavior and ensures predictable program output.
1. Basic Initialization
The simplest way to initialize a variable is by assigning a value during declaration.
int age = 25;
float price = 99.99f;
char grade = 'A';
2. Direct Initialization
In direct initialization, the value is provided inside parentheses.
int age(30);
double pi(3.14159);
3. Copy Initialization
Copy initialization uses the equals (=) operator to assign a value.
int x = 10;
string name = "CodeCrown";
4. Uniform Initialization (C++11)
Uniform initialization uses curly braces {} and prevents narrowing conversions.
int num{50};
double value{3.14};
// int x{3.5}; // Error: narrowing conversion
5. Zero Initialization
If a global or static variable is not explicitly initialized, it is automatically initialized to zero.
#include <iostream>
using namespace std;
int globalVar; // Automatically initialized to 0
int main() {
cout << "Global Variable: " << globalVar;
return 0;
}
6. Complete Example Program
#include <iostream>
#include <string>
using namespace std;
int main() {
int a = 10; // Copy initialization
int b(20); // Direct initialization
int c{30}; // Uniform initialization
double d = 3.14; // Copy initialization
string name{"CodeCrown"}; // Uniform initialization
cout << "a: " << a << endl;
cout << "b: " << b << endl;
cout << "c: " << c << endl;
cout << "d: " << d << endl;
cout << "name: " << name << endl;
return 0;
}
Conclusion
C++ provides multiple ways to initialize variables, including basic, direct, copy, and uniform initialization. Modern C++ (C++11 and later) recommends using uniform initialization for better safety and clarity.
Codecrown