取決于編譯器.
專注于為中小企業提供網站建設、成都做網站服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業北侖免費做網站提供優質的服務。我們立足成都,凝聚了一批互聯網行業人才,有力地推動了成百上千家企業的穩健成長,幫助中小企業通過網站建設實現規模擴充和轉變。
我在Ubuntu16.04 用默認gcc,在eclipse中測試可以實現嵌套定義.
經測試在函數中定義的函數,在當前作用域可以被調用.
這樣一來,c語言貌似具有了一些面向對象的特性,使用起來比較方便
C語言可以遞歸調用,但是(函數)不能嵌套定義。
例如:
int?fact(int?n)
{
if?(n?==?0)
return?1;
else
return?n?*?fact(n?-?1);
}
圖中的遞歸調用是允許的。
而:
void?foo()
{
void?bar()
{
//?Some?code
}
}
這樣在函數內定義函數是不允許的。
不過結構體是可以嵌套定義的,例如:
struct?test?{
int?a;
struct?demo?{
char?b;
};
};
這樣在結構體內定義結構體,是可以的。
函數的定義不可以嵌套 定義函數a void a() //定義a函數 { int b(int c) //定義函數b { } },這是不對的, 但函數的調用可以嵌套 在主函數中調用x函數,x函數在調用y函數 void y() 定義y函數 { …… } void x() 定義X函數 { y(); 調用y函數 } voi...
不可以嵌套定義,每一個函數都有一個內存地址,這個地址是函數的入口,它是不可以在其他函數中定義的。
但是函數可以嵌套調用,也就是在函數A中可以調用函數B
答案是C;
A:函數的定義不可以嵌套,但函數的調用可以嵌套
B:一個C語言程序的執行是從函數main開始,但main結束整個函數就結束。
C:正確。
D:可以不按順序書寫。但是如果函數調用先于函數定義,則需要有函數聲明。
樓主有不懂可以問哦。
在c中可以嵌套調用函數,但不可以嵌套定義函數。
函數嵌套調用是允許的。
int
a()
{
b();//調用函數b
}
函數嵌套定義是錯誤的。
int
a()
{
int
b()
//在函數a中定義函數b
{
……
……
}
分享標題:C語言函數可鑲套定義 c語言定義函數可以嵌套嗎
文章位置:http://vcdvsql.cn/article40/hehdho.html
成都網站建設公司_創新互聯,為您提供建站公司、外貿網站建設、標簽優化、響應式網站、企業網站制作、網站營銷
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯