C语言:main函数必须放在其他函数之前为什么不对?

 我来答
四舍五不入6
高粉答主

2019-10-09 · 还没有填写任何签名哦
四舍五不入6
采纳数:27 获赞数:71370

向TA提问 私信TA
展开全部

main函数不是必须放在其他函数之前,也就是说可以放在其他函数的上面,下面,都可以。

编译器编译时,是逐行编译的。但是它是先找到主函数,主函数编译完也表明这个程序已经编译完了。如果主函数放在其他函数之前,那么在主函数中要调用的子函数(自定义函数)要先在主函数之前声明它的存在。如:void fun(int n,int m);

在多数编程语言里,变量、函数(过程)、结构体、类、对象等都是必须先声明(或在使用它之前定义)后使用。未声明或未在使用它的函数之前定义的,编译都无法通过。而且会报错:未定义的变量或函数等.

扩展资料:

main函数,又称主函数,是程序执行的起点。C程序最大的特点就是所有的程序都是用函数来装配的。main()称之为主函数,是所有程序运行的入口。

其余函数分为有参或无参两种,均由main()函数或其它一般函数调用,若调用的是有参函数,则参数在调用时传递。

int main(void)//整数类型 主函数(无类型)

{

...

y1=f1(x1,x2);//赋值过程

...

}

f1(int a,int b)//f1(整数类型 a,整数类型 b)

{

//百度百科示例代码.....

Y2=f2(x3,x4);//赋值过程

//百度百科示例代码

}

f2(int m,int n)//f2(整数类型 m,整数类型 n)

{

//百度百科示例代码

参考资料来源:百度百科-main函数

L语言之父
推荐于2017-09-26 · TA获得超过3622个赞
知道小有建树答主
回答量:811
采纳率:0%
帮助的人:94.3万
展开全部
main函数不是必须放在其他函数之前,也就是说可以放在其他函数的上面,下面,都可以。
编译器编译时,是逐行编译的。但是它是先找到主函数,主函数编译完也表明这个程序已经编译完了。如果主函数放在其他函数之前,那么在主函数中要调用的子函数(自定义函数)要先在主函数之前声明它的存在。如:void fun(int n,int m);
在多数编程语言里,变量、函数(过程)、结构体、类、对象等都是必须先声明(或在使用它之前定义)后使用。未声明或未在使用它的函数之前定义的,编译都无法通过。而且会报错:未定义的变量或函数等!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
phd121212
2013-02-01 · TA获得超过494个赞
知道小有建树答主
回答量:114
采纳率:0%
帮助的人:36.3万
展开全部
呵呵,你的问题太可爱了。
c语言的语法没有规定main函数必须放在其他函数之前。但不论main函数在整个程序中的位置如何,程序总是从main函数开始执行的。而放在main函数前面的函数一般都是调用函数,只有等到要调用时才会执行。所以函数与函数之间位置是没有先后顺序的,但执行时是有先后顺序的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ilywefomb
推荐于2017-10-01 · TA获得超过379个赞
知道小有建树答主
回答量:349
采纳率:0%
帮助的人:263万
展开全部
亲,C语言运行的时候从main函数开始,一直运行到main函数结束。
期间可以插入运行其他函数。
所以你问题的答案是不对的。
如果main函数在前,其他函数在后,由于系统运行到其他函数时不认识它,所以声明一下即可。
其它函数在main函数前,则无需声明,因为系统已经认识了其它函数。
追问
为什么其它函数在main函数前,系统已经认识了其它函数了呢?还是因为其他函数在main函数前,又由于程序从main函数开始运行,所以其它函数根本不被运行,所以不用声明?O(∩_∩)O谢谢
追答
理解正确!
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Aurora粽
2018-11-30 · 既一知半解,你又何必敷衍作答,误人误己呢
Aurora粽
采纳数:12 获赞数:379

向TA提问 私信TA
展开全部
1.自定义函数如果在main()前声明,则定义的位置任意。
2.如果自定义函数不声明直接定义,这时就必须把它放在main函数之前,不然系统不“认识”它,则没法在main中使用。
PS:把自定义函数编入头文件,到时候引用也是个不错的办法。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式