C++中break问题
来源:百度知道 编辑:UC知道 时间:2024/05/24 04:47:03
for(int i=0;i<NUM;i++)
{
cin>>ddd.ID[i];
cout<<"输出信息"<<ddd.ID[i]<<endl;
while(ddd.ID[i]==0)
{break;}
}
怎么跳不出来,17处错误,我看不出哪有问题...
2楼说的我都用过了,还是出错!!!
{
cin>>ddd.ID[i];
cout<<"输出信息"<<ddd.ID[i]<<endl;
while(ddd.ID[i]==0)
{break;}
}
怎么跳不出来,17处错误,我看不出哪有问题...
2楼说的我都用过了,还是出错!!!
while(ddd.ID[i]==0)
{break;}
while也是循环结构,是当型循环,当ddd.ID[i]==0为真的时候执行break
break是跳出当前循环,你把它写在while循环结构里它就跳出while循环而不是跳出for循环。
这里应该使用if语句:
if (ddd.ID[i]==0) break;
for(int i=0;i<NUM;i++)
{
cin>>ddd.ID[i];
cout<<"输出信息"<<ddd.ID[i]<<endl;
if(ddd.ID[i]==0) //注意
{break;}
}
将while改为if
还有的就是你的ddd是不是类的对象还是结构体,如果是类的对象的话,直接给私有型的成员数据赋值就会错误。
还是把你的所有编的都拿出来看看再说,就这几行,看不出来。
fletin讲的好