最常見的問題之一是在C或C 中,未初始化的原始資料值會是什麼值?嗯,答案在不同的系統中是不同的。我們可以假設編譯器會將變數賦值為0。對於整數,可以將其賦值為0,對於浮點數,可以將其賦值為0.0,但是對於字元類型的數據,會是什麼呢?
#include <iostream> using namespace std; main() { char a; float b; int c; double d; long e; cout << a << "\n"; cout << b << "\n"; cout << c << "\n"; cout << d << "\n"; cout << e << "\n"; }
1.4013e-045 0 2.91499e-322 0
0 0 0 0
所以,現在問題來了,為什麼C或C 不為變數分配一些預設值呢?答案是,初始化堆疊變數的開銷很高。它還會影響執行速度。因此,這些變數可能包含一些中間值。所以我們需要在使用之前初始化原始資料類型的值。
以上是C/C++中的未初始化原始資料型別的詳細內容。更多資訊請關注PHP中文網其他相關文章!