This question already has answers here:
Variable initialization in C++
                                
                                    (11个答案)
                                
                        
                                去年关闭。
            
                    
我是C ++的新手,刚刚起步。
我正在做一个简单的练习,我需要声明一个int类型的变量并将其添加到其中。

本质上,整数的起始值为44,我不知道为什么。

练习来自我正在关注的书。

这是我的代码:

#include <iostream>
using namespace std;

int main()
{
   int sum;
   sum = sum + 1;
   cout << sum;
   return 0;
}


如果我运行以下代码,我将得到45的答案,这对我来说毫无意义。

我想了解为什么sum的值为44(如果未分配任何值)。

我正在使用VScode和g ++编译器。

谢谢!

最佳答案

首先必须初始化变量。
正确的代码是:

int sum = 0;
sum = sum + 1;


在您的情况下,您有undefined behavior

09-10 05:23