无意发现个问题,vc++6.0 函数声明 必须在main函数括号中最前面吗?

[复制链接]
查看11 | 回复5 | 2012-4-28 10:52:00 | 显示全部楼层 |阅读模式
在C语言中,函数体分为两部分,声明部分和可执行部分。而且规定声明部分必须在可执行部分之前。声明部分可以包含变量的定义,函数的声明等等。在你的这个例子中,scanf("%d %d",&a,&b);语句属于可执行部分。把函数声明放在这个语句的后边肯定会报错,因为违反了声明部分和可执行部分的规定。另外函数的声明可以在调用函数的内部声明,也可以在函数外部声明,声明的位置不同,其作用域不同,被声明的函数的作用域是从声明点开始直到当前文件的结束。具体要在什么地方声明一个函数,还需要根据自己的需要来决定。上边有人说必须在main函数之前声明,也有说要在外部声明,都是不准确的。以上关于声明部分和可执行部分的顺序是C语言的语法规定,而C++语言没...
回复

使用道具 举报

千问 | 2012-4-28 10:52:00 | 显示全部楼层
按说只要在调用之前声明就不会报错这个牵扯到变量或者函数的作用域问题外部变量,作用域是声明的地方到文件的结束为止内部变量,作用域是声明这个变量到这个函数结束为止函数一般都是外部的,我的一个建议啊最好是在main前面声明并且写代码,这样永远不会出错,而且易懂易读...
回复

使用道具 举报

千问 | 2012-4-28 10:52:00 | 显示全部楼层
函数的声明要在main函数外才行比如这里应该先写int max(int x, int y);//max声明函数再写void main(){...}要在主函数前...
回复

使用道具 举报

千问 | 2012-4-28 10:52:00 | 显示全部楼层
不是编译器问题,应该是语法规则。常用方法是在主函数前使用声明。记住就行了。...
回复

使用道具 举报

千问 | 2012-4-28 10:52:00 | 显示全部楼层
应该不会吧!只要在调用前声明就行了噻!...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行