c语言中 声明子函数和没有声明子函数有什么区别
5个回答
展开全部
子函数在声明后可以先调用,后定义;避免编译器猜数据。操作方法如下:
1、函数的声明,函数有两种类型,一种是有返回值的,前面用int float double char 来定义,如int f(int n);前面的int就是返回值类型。
2、 如果函数不需要返回值,那么就用void来写在前面,如void f(int n);注意声明后面加分号。
3、 函数的定义,有返回值的函数一般就是 int f(int) { 函数内容 return 返回的结果}。注意f()没有分号。
4、没有返回值的函数结构为void f(){函数内容,发f(int n)后面也没有分号。
5、看一下函数的调用,有返回值的一般语言定义一个变量如c=f(n)。
展开全部
基本上来说是没有多大的区别的。
区别可能就是在你的调用函数在你的被调用函数之前出现的。那么这个时候你要是不声明被调用函数的话,就会报错的。然后你在前面加上函数的声明就没有问题了。
但是如果你的被调用函数在你的调用函数之前出现呢,即实现,那么这个时候就是不会有什么影响的。
比如说:函数A是调用函数,函数B是被调用函数
可以这样写
void A()
{
//实现功能
}
void B()
{
A();
//实现功能
}
如果这样写的话,那么就是不会有什么问题的。
但是如果像下面这样写的话,就会有问题了。
voidB()
{
A();
//实现功能
}
void A()
{
//实现功能
}//程序调试的时候会报错的。
区别可能就是在你的调用函数在你的被调用函数之前出现的。那么这个时候你要是不声明被调用函数的话,就会报错的。然后你在前面加上函数的声明就没有问题了。
但是如果你的被调用函数在你的调用函数之前出现呢,即实现,那么这个时候就是不会有什么影响的。
比如说:函数A是调用函数,函数B是被调用函数
可以这样写
void A()
{
//实现功能
}
void B()
{
A();
//实现功能
}
如果这样写的话,那么就是不会有什么问题的。
但是如果像下面这样写的话,就会有问题了。
voidB()
{
A();
//实现功能
}
void A()
{
//实现功能
}//程序调试的时候会报错的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为,程序的编译都是从main函数开始的。所以当要调用的子函数在main 函数之前定义时,就不需要再在main函数中声明子函数了,如果要调用的子函数在main函数后面时,就必须在main函数中声明,否则,编译将出现错误。
如果,怕忘了,在main函数中声明子函数,建议你养成在main函数前定义子函数的习惯,计算机等级考试里的子函数,也都是在main函数之前定义的。
希望对你有帮助!
如果,怕忘了,在main函数中声明子函数,建议你养成在main函数前定义子函数的习惯,计算机等级考试里的子函数,也都是在main函数之前定义的。
希望对你有帮助!
追问
谢谢您能够回答我的问题!那如果我已经把所有的子函数都写在主函数前面了,对那些子函数的顺序有要求吗?因为我写程序的时候,有些子函数也是需要调用一些子程序的
追答
只要是要调用的子程序,在调用的的前面就行,比如说子程序 void A 和 void B,如果子程序B 在使用时,要调用A,只要A的定义在B的前面,那么B调用时,就不必加声明语句!
不懂可以继续追问。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
子函数与主函数之间的顺序需要发生改变而已.
主函数在前,必须声明,要不主函数不能调用。
主函数在后,就不必声明。
主函数在前,必须声明,要不主函数不能调用。
主函数在后,就不必声明。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询