C语言中不能再函数内定义函数吗?

主函数内不就可以定义别的函数吗?这句话就不攻自破了?

不可以,即使主函数中也不可以,C语言只允许在函数中声明和嵌套调用。

C语言中是不允许作嵌套的函数定义。因此程序中各个函数之间是平行的,不存在上一级函数和下一级函数的问题,这样是为了简化C语言编译器的逻辑性。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-22
函数不能嵌套定义的,只能在外面定义然后在主函数调用
第2个回答  2012-12-22
函数的调用可以嵌套,定义不可以嵌套。主函数不能视为一般函数看待,它和其他函数有很大的区别。
第3个回答  推荐于2017-10-10
主函数里怎么能定义一个函数呢?
主函数里最多也 只能声明一个函数而已。
要区分什么是定义,什么是声明。一般的C语言的书都会介绍的。本回答被提问者采纳

C语言中不能再函数内定义函数吗?
不可以,即使主函数中也不可以,C语言只允许在函数中声明和嵌套调用。C语言中是不允许作嵌套的函数定义。因此程序中各个函数之间是平行的,不存在上一级函数和下一级函数的问题,这样是为了简化C语言编译器的逻辑性。

为什么C语言不允许在函数内部定义函数?
C语言不允许在函数内部定义函数,这主要是由于几个设计上的考虑:1、静态作用域规则:C语言遵循静态作用域规则,这意味着变量和函数的作用域是在编译时确定的。如果在函数内部定义函数,那么这个内部函数的作用域将与外部函数重叠,这可能导致命名冲突和理解上的困难。2、编译时链接:C语言使用静态链接,这...

C语言:可以在一个函数中定义另一个函数为什么不对?
1.从c\/c++编译器编译方式来看.编译器编译的方式是逐条往下编译的.要是一个函数中又定义一个函数,则编译器很容易搞混,分不清到底那一句是函数1的那一句是函数2的,就很有可能上面一句是函数1的,下一句就直接跳到函数2的,跳来跳去的,也只有人能认清,计算机没有像人那样的跳跃思维.所以,语法就这样...

函数的定义和调用可以嵌套吗
以c语言为例,其函数的定义不能嵌套,但是调用可以嵌套。函数不能嵌套定义是由于语法不支持造成在函数定义的内部不能定义函数。C语言中函数的定义都是相互平行、相互独立的,也就是说在函数定义时,函数体内不能包含另一个函数的定义,即函数不能嵌套定义,但可以嵌套调用。C语言是一门面向过程的计算机编...

C语言中不能在函数里面声明函数吗
C语言允许函数里声明函数,但是不建议这么写,因为不利于多文档的组织。C语言禁止函数里定义函数,但是个别编译器却没遵循标准。C语言的标准和编译器的实现并不是完全统一,为了可移植性,建议一切都按C语言标准中推荐的做法来写。我还写了个代码附带注释,程序在CFree这个IDE(内置gcc编译器)上运行是...

C语言中不能在函数里面声明函数吗
可以在函数里面声明,但是在函数里面声明后,其作用域就会局限于该函数内

C语言编程中出现这样的错误“local function definitions are ill...
C语言不允许函数嵌套定义,也就是在函数里面定义函数。通常造成函数嵌套定义的原因有两种:①直接在函数里面定义另一个函数(新手最常犯的错误,在main函数里面定义函数)。解决办法:就是将函数放到外面定义。②大括号不匹配,造成嵌套定义(新手常犯,且不易发现)。解决办法是:细心检查,将大括号补全,...

C语言程序设计中,要调用的函数必须在main()函数中定义
不用,一般函数都是独立的,不用在函数内部定义,在函数内部定义会使代码看起来非常乱,函数在main()函数上面,就不用申明;函数在main()下面就要先在main()的上方声明。

函数非法定义是什么回事?c语言
不能再一个函数内定义另一函数;void main(){ double fun(int n){ } } 是错误的。自己定义的函数要在main()声明 如 double fun(int n)——自己定义的函数的声明 void main(){ a= fun(b); } double fun(int n){ } 如果自己定义的函数在main()前定义c就不需声明。d...

在C语言程序中,要调用的函数必须在main()函数中定义中吗
除了库函数(例如printf(),scanf())的函数外,其他的自己定义的函数不能写在main()函数里面,一定要放在main()函数的外面。

相似回答