【问题标题】:output console in Eclipse and arrays syntaxEclipse 和数组语法中的输出控制台
【发布时间】:2013-06-07 11:07:11
【问题描述】:

我是编程新手,对数组有点困惑,这段代码似乎有问题,因为 Eclipse 输出控制台说 ** Build of configuration Debug for project Project **

内部构建器用于构建** gcc -O0 -g3 -Wall -c -fmessage-length=0 -omain.o ..\main.c gcc -oProject.exe main.o C:...\Documents\eclipse\mingw\bin..\lib\gcc\mingw32\3.4.5........\mingw32\bin\ld.exe: 无法打开输出文件 Project.exe:没有权限 collect2: ld 返回 1 个退出状态 发生构建错误,构建已停止 消耗时间:472 毫秒。

非常感谢您的帮助...

int main()
{
    int box[2][2], rows, cols, x = 1;

    for (rows=0; rows < 2; rows++)
    {

        for (cols=0; cols < 2; cols++)
        {
            box[rows][cols] = x++;
            printf("%d", box[rows][cols]);
        }

    }
    fflush(stdout);
    getch();
    return 0;
}

【问题讨论】:

  • 如果你删除 getch(); 在 gcc 中工作得很好。你在哪个环境工作,你在用哪个编译器?
  • 参考这个帖子 stackoverflow.com/questions/4648808/…>.
  • 我正在使用 Eclipse... 但我正在切换到 Pelles C... 可能看起来 gcc 也谢谢。
  • 它在 Pelles C 中运行良好。耶! :) 我有一个与数组混淆的问题,语句 box[rows][cols] = x++;说增量 x 对吗?但是 x=1 已经是,所以 box[rows][cols] 或 box[0][0] = 2 的值?为什么在打印输出中显示 1?

标签: c


【解决方案1】:

x++ 是后增量,因此使用 x 的值然后递增,因此 box[0][0] 为 1

【讨论】:

  • 对不起... X++ 在什么语句中执行增量,据我了解 box[rows][cols] = x++ is not equal to box[rows][cols] = 2 , 因为你说 box[rows][cols] = 1;这是否意味着它会在内部 for 循环中运行整个语句一次,然后在 printf("%d", box[rows][cols]) 这是唯一一次 x 增加到 2 之后?
  • 阅读此链接以了解递增和递减运算符cprogrammingcodes.blogspot.in/2011/09/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-01
  • 1970-01-01
  • 2018-09-14
  • 1970-01-01
  • 2012-12-13
  • 2017-10-23
相关资源
最近更新 更多