新手学简单的C++问题。

来源:百度知道 编辑:UC知道 时间:2024/06/06 06:34:54
各位前辈教教小生
(1)为什么j的值是100?
#include<iostream>
int i=42;
int main()
{
int i=100;
int j=i;
std::cout<<j;
return0;
}
(2)为什么不对?
#include<iostream>
int main()
{
int i=100,sum=0;
for(int i=0;int!=10;++i)
sum+=i;
std::cout<<i<<" "<<sum<<std::endl;
return 0;
}

(1)i先被赋值42 然后赋值100 然后j=i
所以j=100
(2)int!=10 这点不对
应该是i!=10

1.局部变量会屏蔽全局变量,因些 j 被赋值为 100
2.int i =0;int !=10 典型的错误,应该是 for(i=0;i!=10;i++)

(1) 这是变数存活周期的问题,使用 变数存活周期 当关键字到网路上查可以有详尽解答

(2) for(int i=0;int!=10;++i) 中 int != 10 错了,改 i!=10可,不过习惯式通常是 i < 10