0

我是编程初学者,所以我想要一个简单的答案:)

我有一个带有多个条件的 for 循环,它打印出两个数组。它有效,但我在 for() 下收到警告和红线。为什么会这样,我该如何避免呢?我正在用 C 语言编写它,并在 Ubuntu 中使用 Geany 编译器。:)

for((i=LEN-1) && (j=1); (i>=LEN-3) && (j<=PODIUM); i-- && j++)  
{       
  printf("%d. koht: %s tulemusega %f\n", j, voist[i], tul[i]);      
}
4

2 回答 2

0
for(i=LEN-1,j=1 ; (i>=LEN-3) && (j<=PODIUM); i--, j++) 

编辑: 它有效,因为这是正确的语法。您不需要使用 and 运算符来组合两个初始化或两个增量。你可以使用,

于 2013-11-28T14:11:02.720 回答
0

这个警告是因为它的返回值(i=LEN-1) && (j=1)被机器人进一步使用。为了避免警告,试试这个

int temp;
... 

temp = (i=LEN-1) && (j=1);

for(; (i>=LEN-3) && (j<=PODIUM); i-- && j++)  
{  

     ....

     temp = (i=LEN-1) && (j=1);
} 
于 2013-11-28T14:03:27.583 回答