C++ 我得到了一个作用域错误和未初始化错误的同一个变量 intmain(){ int a,b,num,y; cin>>num; 开关(num){ 案例1:soi_cout(); cin>>num; 如果(num==1){ ab_cout(); cin>>a; cin>>b; 对于(int i=a;i>num; 开关(num){ 案例1:soi_cout(); cin>>num; 如果(num==1){ ab_cout(); cin>>a; cin>>b; 对于(int i=a;i
我不明白这个“y”是干什么的?你没有用这个变量输出任何东西 但是对于你的问题,就像错误75告诉你的,你应该初始化这个变量。 例如:C++ 我得到了一个作用域错误和未初始化错误的同一个变量 intmain(){ int a,b,num,y; cin>>num; 开关(num){ 案例1:soi_cout(); cin>>num; 如果(num==1){ ab_cout(); cin>>a; cin>>b; 对于(int i=a;i>num; 开关(num){ 案例1:soi_cout(); cin>>num; 如果(num==1){ ab_cout(); cin>>a; cin>>b; 对于(int i=a;i,c++,C++,我不明白这个“y”是干什么的?你没有用这个变量输出任何东西 但是对于你的问题,就像错误75告诉你的,你应该初始化这个变量。 例如: int main(){ int a, b, num; cin >> num; switch (num){ case 1: soi_cout(); cin >> num; if(num == 1){ ab_cout(); cin >> a;
int main(){
int a, b, num;
cin >> num;
switch (num){
case 1: soi_cout();
cin >> num;
if(num == 1){
ab_cout();
cin >> a;
cin >> b;
for(int i=a; i<=b; i++){
y += y1(i);
return 0;
}
return 0;
}
return 0;
}
return 0;
}
63 int main(){
64整数a,b,num,y;
65 cin>>num;
66开关(数字){
67
68案例1:soi_cout();
69 cin>>num;
70如果(num==1){
71 ab_cout();
72 cin>>a;
73 cin>>b;
y=0;//或任何要初始化的数字
74对于(inti=a;i第一个业务订单,您必须使用它,所以您需要声明变量。这将修复您的第二个错误
63 int main(){
64 int a, b, num, y;
65 cin >> num;
66 switch (num){
67
68 case 1: soi_cout();
69 cin >> num;
70 if(num == 1){
71 ab_cout();
72 cin >> a;
73 cin >> b;
y = 0; //or any number you want to initialize
74 for(int i=a; i<=b; i++){
75 y += y1(i);//you can't just declare this 'y' because you used it in there
76 return 0;
77 }
78
79 return 0;
80 }
81 return 0;
82 }
83
84
85 return 0;
86 }
而不是
int y = 0
你的问题就解决了。你需要声明并初始化它。它不是/or。删除行号可能有助于其他人轻松复制和执行。@JonathanPotter这两种方法我该怎么做?int y=0;
是一种方法。顺便说一句@SamR。你似乎误解了返回0;
。当你的程序到达第一行时,它将退出在此声明中。忽略警告是错误的建议,这是有原因的。在这种情况下,OP的代码将导致y
包含一个“垃圾”值。我没有说你应该;)谢谢@MatthäusBrandl的建议我修正了我的答案以反映它。
int main(){
int a, b, num;
int y; // THIS FIXES SECOND ERROR YOU HAVE
y = 0; // THIS FIXES FIRST ERROR YOU HAVE
cin >> num;
switch (num){
case 1: soi_cout();
cin >> num;
if(num == 1){
ab_cout();
cin >> a;
cin >> b;
for(int i=a; i<=b; i++){
y += y1(i);
return 0;
}
return 0;
}
return 0;
}
return 0;
}
int y = 0
int y;