What do you think happens when you use an uninitialized primitive data type?
Well you may assume that the compiler should assign your primitive type variable with meaningful values like 0 for int, 0.0 for float. What about char data type?
Let’s find the answer to that by running the code in the IDE.
Output in GFGs IDE:
5.88052e-39 0 6.9529e-310 0
Output in Codechef IDE:
0 0 0 0
Output on my machine:
1.4013e-045 0 2.96439e-323 0
Why C/C++ compiler does not initialize variables with default values?
“One of the things that has kept C++ viable is the zero-overhead rule: What you don’t use, you don’t pay for.” -Stroustrup.
The overhead of initializing a stack variable is costly as it hampers the speed of execution, therefore these variables can contain indeterminate values. It is considered a best practice to initialize a primitive data type variable before using it in code.
- Difference between fundamental data types and derived data types
- Data Types in C
- C++ Data Types
- Derived Data Types in C++
- C | Data Types | Question 8
- C | Data Types | Question 9
- C | Data Types | Question 6
- C | Data Types | Question 5
- C | Data Types | Question 4
- C | Data Types | Question 2
- C | Data Types | Question 1
- C | Data Types | Question 7
- Calculate range of data types using C++
- User defined Data Types in C++
- What are the data types for which it is not possible to create an array?
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.