364904690 发表于 2015-4-4 15:40:09

C语言编译问题咨询?

本帖最后由 364904690 于 2015-4-4 15:45 编辑

#include <stdio.h>//输入三个数,按从小到大的顺序输出
void main()
{
      
      printf("Please input three numbers:\n");/*问题在这儿,VC6.0下编译出现5个错误。*/
      int a,b,c,t;/*当把这句定义语句放在上一句的上面后,编译时没有错误了,不知为什么?*/
      scanf("%d%d%d",&a,&b,&c);
      if(a>b)
      {
                t=a,a=b,b=t;
      }
      if(a>c)
      {
                t=a,a=c,c=t;
      }
      if(b>c)
      {
                t=b,b=c,c=t;
      }
      printf("a=%d\nb=%d\nc=%d\n",a,b,c);
}



仰望天上的光 发表于 2015-4-4 21:34:23

C语言规定,变量的定义必须在语句块(就是{})最开头。
你的定义int a,b,c,t;出现在printf();语句之后,也就是没有出现在语句块最开头。

Max.馬 发表于 2015-4-4 22:07:13

c语言变量要在一开始定义,c++才可以使用前一句定义

fish_heimao 发表于 2015-4-4 22:38:01

nice

らHorizon°Eter 发表于 2015-4-6 17:45:15

原来如此,我也明白了
页: [1]
查看完整版本: C语言编译问题咨询?