变量定义的位置问题

来源:百度知道 编辑:UC知道 时间:2024/09/26 10:51:46
我在纯C的环境下编程的时候,有时候变量在一句赋值语句之后定义,会提示错误,是那种变量定义不能出现在执行块之后的提示。但是在C++环境下,比如VC6.0,变量定义的位置就比较随意,这个区别是由什么决定的呢?我没学过编译原理,这是由编译器的不同导致的吗?
我主要的意思,是该怎么去补充着部分知识呢,这些东西是在标准语法中讲到的呢?还是在编译原理中讲到的呢?

语法规范 你用C99规范的编译器C代码也可以随便定义。

这个应该是代码的执行顺序,和执行原则引起的。
再者,你要看变量声明的是不是全局的。

这个就是语言的规定,C语言就是规定所有变量的定义必须在语句之前,而C++比较灵活,可以随便定义,和编译器什么的没有关系
这个和编译器没关,肯定就不是在编译原理中讲的了,是在语法书中讲到的,我当时是在C++的书上看到的