问一个有关c++的问题.

来源:百度知道 编辑:UC知道 时间:2024/05/03 21:43:43
我的程序是这样的#include<iostream.h>main(){int i,sumsum=0;for(i=1;i<=100;i++)sum+=i;cout<<i<<sum<<endl;可是如果当我将sum=0去掉时,输出的结果就不是一加到一百的值了.而是858988410,请问这是为什么?;

sum是个局部变量,不初始化的话,会是一个随机的值。
你拿随机值去sum+=i,结果打印的sum肯定是不可预料的.
sum=0就是手动把sum从随机值改成0.

sum需要初始化为0,如果不初始化的话,会是一个随机的值。

sum是auto型变量,如果在使用前不赋值,其值为一随机数