鱼C论坛

 找回密码
 立即注册
查看: 6057|回复: 10

为什么C语言的变量声明都必须在最前面。

[复制链接]
发表于 2012-12-31 18:15:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我的声明在后面编译就过不去。
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-12-31 18:51:41 | 显示全部楼层
程序自上而下执行 不在上面 ,编译器就不是知道 就错误了
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-12-31 18:54:07 | 显示全部楼层
编译器从上至下编译
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-12-31 19:34:04 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-12-31 20:28:01 | 显示全部楼层
格式天下 发表于 2012-12-31 19:34
那为什么C++可以呢???

因为它们是不同的语言,有不同的语法(虽然交集很大,但还是不同的语言)
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2012-12-31 20:28:39 | 显示全部楼层
  1. void main(){
  2.        char s;
  3.        s = 'A';
  4.        printf("test");
  5.        putchar(s);
  6. }
复制代码
  1. void main(){
  2.        printf("test");
  3.        char s;
  4.        s = 'A';      
  5.        putchar(s);
  6. }
复制代码
第一个可以编译通过,第二个为什么就不能编译通过呢?
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-12-31 20:37:01 | 显示全部楼层
暮光青年 发表于 2012-12-31 20:28
和第一个可以编译通过,第二个为什么就不能编译通过呢?

你用什么编译器?
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2013-1-1 16:37:55 | 显示全部楼层
小布丁 发表于 2012-12-31 20:37
你用什么编译器?

我用C-Free
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2013-1-1 18:53:08 | 显示全部楼层
暮光青年 发表于 2012-12-31 20:28
和第一个可以编译通过,第二个为什么就不能编译通过呢?

声明必须在前面的,必须在程序的开始开辟好空间的。
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2013-1-2 16:47:42 | 显示全部楼层
C标准规定的呗
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2013-1-2 17:30:43 | 显示全部楼层
这个   要学通计算机底层   还有   你要把c语言的诞生过程了解    包括细节    就懂了   但好难    祝君好运
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-8-9 20:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表