c - 在 for 循环中使用全局变量

标签 c loops for-loop

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/

相关文章:

c - 如何检测用户是否插入带逗号的数据(以所需的格式)?

javascript - 使用 jquery 修改列表中的第 n 个 li

arrays - VB.NET - For Each 循环不改变类数组中的元素

c - Visual Studio 2008 与转义序列的奇怪行为

c - 预取对齐内存

c - 如何在循环的最后停止换行?

ios - 使用 for 循环设置数组中的值

java - 根据循环返回向数组添加新对象

c - 如何从C中的字符串中删除多余的空格

python - 在 for 循环中使用变量作为数据框列名称