GCC不会在Ubuntu中编译预期的C代码

时间:2012-06-21 04:55:05

标签: c gcc ubuntu

今天早上在我的CS实验室中,我正在编译并执行一些C代码。代码如下:

#include <stdio.h>
#define SIZE 3

int main()
{
float x[SIZE];
float *fp;
int i;

for(i=0; i<SIZE; i++)
//{
    x[i] = 0.5*(float)i;
//}

for(i-0; i<SIZE; i++)
//{ 
    printf(" %d %f \n", i, x[i]);

//}

fp=x;

for(i=0; i<SIZE; i++)
//{
    printf(" %d %f \n", i, *(fp+i));
//}  
}

这是我在Ubuntu终端中用来编译的命令:

  

gcc -o program program.c

这是我用来执行的命令

  

./程序

这是我遇到的结果:

  

0 0.50000

     

1 1.50000

     

2 2.50000

这是我期望在同一实验室的其他计算机上找到的结果。

  

0 0.50000

     

1 1.50000

     

2 2.50000

     

0 0.50000

     

1 1.50000

     

2 2.50000

免责声明:我仔细检查并三次检查我的代码与其他计算机中的代码完全无关。

显然,这里的编译器有问题。任何人都可以告诉我这是什么问题?以及如何解决它?

此致

1 个答案:

答案 0 :(得分:7)

你的问题是:

for(i-0; i<SIZE; i++)
   ^^^^^

这使得for语句无效,因此后面的printf没有输出 如果您 compile it with strict warnings ,编译器应该告诉您。

输出

  

cc1:警告被视为错误
  prog.c:在函数'main'中:
  prog.c:15:error:语句无效

一旦你解决了明显的拼写错误,所有 compilers will generate the output twice