相关疑难解决方法(0)

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

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

例如:

for(int i=0,j=0 ...
Run Code Online (Sandbox Code Playgroud)

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

c++ scope for-loop declaration

223
推荐指数
4
解决办法
16万
查看次数

Java - 用于循环声明的逗号运算符

我知道我可以像这样使用逗号运算符

for (int i = 1, j = 15; j>10; i++, j--) {
    // do something neat
}
Run Code Online (Sandbox Code Playgroud)

但是有些文章似乎暗示逗号运算符可以在for循环声明之外使用,例如

int j = 2, k = 4 ;
int x ;
// Assignment statement with comma operator
x = j + 1, k ;
Run Code Online (Sandbox Code Playgroud)

来源:http://www.cs.umd.edu/~clin/MoreJava/ControlFlow/comma.html

要么

int x = (expression) ? (i++,2) : 3;
Run Code Online (Sandbox Code Playgroud)

来源:https://stackoverflow.com/a/12047433/1084813

对于代码混淆竞赛来说这将是一个巧妙的技巧或混淆我的同事,但两个示例都不会编译(Java 1.6,Eclipse Juno),错误是"赋值的左侧必须是变量".我试着查看编译器设置,看看是否可以禁止防止错误的代码,但没有运气.

怎么了?逗号运算符是旧规范的一部分,后来又改变了吗?使用不同Java设置编写这些示例的人是否允许这样做?

java for-loop variable-assignment comma-operator assignment-operator

7
推荐指数
2
解决办法
9510
查看次数

为什么我们没有在for循环中进行多次初始化?我们有多个增量语句

为什么我们没有在for循环中进行多次初始化?我们有多个增量语句.

码:

for(int i=1,int c=4;i<1;i++)
  System.out.println(c);
Run Code Online (Sandbox Code Playgroud)

此代码显示编译时错误.

java

-2
推荐指数
1
解决办法
73
查看次数

Java for循环:为什么我不能在for循环'header'中声明两个变量?

我总是想知道,为什么不编译?

for(int i=0, int q=0; i<a.length; i++){
   ...
}
Run Code Online (Sandbox Code Playgroud)

为什么Java不允许我在for循环'header'中声明多个变量?这背后有合理的原因吗?

java programming-languages

-2
推荐指数
1
解决办法
729
查看次数