zhanjunlihai 2023-10-15 11:04 采纳率: 24.7%
浏览 11

变量都必须 “先定义,后使用

变量都必须 “先定义,后使用 根据系统

为什么第一个就有错误,第二个没有,在data 使用之前也进行了变量呀

只不过就是 赋值语句 a=; float data; 顺序不同,这是为什么呢
到那时在使用 a 或者 data 之前 我都进行了定义亚。。


```c
int main()
{    int  a,b=2;
      a=1;
     float  data;  
     data=(a+b)*1.2;       
     printf("data=%f\n",data);
     return  0;
}



int main()
{    int  a,b=2;
      float  data;
      a=1;
      data=(a+b)*1.2;      
      printf("data=%f\n",data);
      return  0;
}


```

  • 写回答

2条回答 默认 最新

  • micthis 2023-10-15 11:29
    关注

    因为你的编译器太老了,对于有些老的编译器所有变量定义必须放在函数的最前面。
    而图1定义

    float data;
    

    的前面有一个赋值语句:

    a=1;
    

    对于老编译器这是不允许的。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 10月15日