Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
为什么未初始化的变量会打印一个奇怪的负值?
int x; cout << x << endl;
你在做什么(读取未初始化变量的值)是未定义的行为;任何事情都可能发生,从看起来可以工作,到打印随机值,到崩溃,再到用信用卡购买披萨。
未初始化变量是已声明但在使用前未设置为明确的已知值的变量。它会有一些价值,但不是可预测的。
当变量未初始化时,它会显示“垃圾值”。这意味着它可以是来自任何地方的任意数字,可能来自另一个正在运行的应用程序或来自大内存池的随机数。