for (int i = number_1; i > 0; i--)
{
int j = 2;
printf("%*s", i - 1,"");
for (j; j > 0; j--)
{
printf("#");
}
printf("\n");
j = j + 1;
}
在这里,我尝试通过获取在上一个循环中声明的变量来运行我的辅助 for 循环。它迭代并打印符号“#”,然后在外循环结束之前再次加 1。
我收到此错误:
expression result unused
这是怎么回事?我当然可以用不同的方式完成任务。但我想找出为什么代码在这种情况下不起作用。
最佳答案
此声明:
j = j + 1;
给“j”一个值,但循环的下一次迭代会遇到以下语句:
int j = 2;
因此第一条语句的结果未被使用。
但是,由于它是“初始化”,因此这可能并不重要。
然后这个语句:
for (j; j > 0; j--)
有语法错误。其中第一个参数用于初始化值(在本例中为“j”),但不执行初始化。
建议:
for (; j > 0; j--)
所以第一个参数被省略
关于c - 在 for 循环中使用全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32567663/