在c中可以嵌套調(diào)用函數(shù),但不可以嵌套定義函數(shù)。
創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的東洲網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
函數(shù)嵌套調(diào)用是允許的。
int
a()
{
b();//調(diào)用函數(shù)b
}
函數(shù)嵌套定義是錯誤的。
int
a()
{
int
b()
//在函數(shù)a中定義函數(shù)b
{
……
……
}
就是在一個語句的內(nèi)部,含有一個或更多的同種語句。
例如:
if(條件1)
{if(條件2)....;}
例如:
for(i=0;i5;i++)
{for(j=0;j10;j++)
....;
}
取決于編譯器.
我在Ubuntu16.04 用默認(rèn)gcc,在eclipse中測試可以實現(xiàn)嵌套定義.
經(jīng)測試在函數(shù)中定義的函數(shù),在當(dāng)前作用域可以被調(diào)用.
這樣一來,c語言貌似具有了一些面向?qū)ο蟮奶匦?使用起來比較方便
在一個函數(shù)體內(nèi)再定義一個函數(shù),就是嵌套定義了。比如:void
FunOuter(){void
FunInner(){......}}這個FunInner函數(shù)就是FunOuter的嵌套,是不允許的
答案是C;
A:函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套
B:一個C語言程序的執(zhí)行是從函數(shù)main開始,但main結(jié)束整個函數(shù)就結(jié)束。
C:正確。
D:可以不按順序書寫。但是如果函數(shù)調(diào)用先于函數(shù)定義,則需要有函數(shù)聲明。
樓主有不懂可以問哦。
不可以嵌套定義,每一個函數(shù)都有一個內(nèi)存地址,這個地址是函數(shù)的入口,它是不可以在其他函數(shù)中定義的。
但是函數(shù)可以嵌套調(diào)用,也就是在函數(shù)A中可以調(diào)用函數(shù)B