猿问

是否可以在for循环中声明两个不同类型的变量?

是否可以在for循环中声明两个不同类型的变量?

是否可以在C ++的for循环的初始化主体中声明两个不同类型的变量?

例如:

for(int i=0,j=0 ...

定义了两个整数。我可以在初始化主体中定义a int和a char吗?怎么做?


慕尼黑5688855
浏览 2315回答 3
3回答

大话西游666

不可能,但你可以这样做:float&nbsp;f;int&nbsp;i;for&nbsp;(i&nbsp;=&nbsp;0,f&nbsp;=&nbsp;0.0;&nbsp;i&nbsp;<&nbsp;5;&nbsp;i++){ &nbsp;&nbsp;//...}或者,明确限制范围f和i使用其他括号:{ &nbsp;&nbsp;&nbsp;&nbsp;float&nbsp;f;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;i; &nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(i&nbsp;=&nbsp;0,f&nbsp;=&nbsp;0.0;&nbsp;i&nbsp;<&nbsp;5;&nbsp;i++) &nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//... &nbsp;&nbsp;&nbsp;&nbsp;}}

幕布斯7119047

不 - 但从技术上讲,有一种解决方法(不是我实际上使用它,除非被迫):for(struct&nbsp;{&nbsp;int&nbsp;a;&nbsp;char&nbsp;b;&nbsp;}&nbsp;s&nbsp;=&nbsp;{&nbsp;0,&nbsp;'a'&nbsp;}&nbsp;;&nbsp;s.a&nbsp;<&nbsp;5&nbsp;;&nbsp;++s.a)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;std::cout&nbsp;<<&nbsp;s.a&nbsp;<<&nbsp;"&nbsp;"&nbsp;<<&nbsp;s.b&nbsp;<<&nbsp;std::endl;}
随时随地看视频慕课网APP
我要回答