當前位置:首頁 » 編程語言 » c語言定義與聲明

c語言定義與聲明

發布時間: 2023-11-02 23:48:03

『壹』 在c語言中,什麼是聲明、定義、初始化有什麼區別

1.聲明和定義是針對函數的概念:
包含函數實現的叫做函數的定義,一般位於.c文件中,如:
int func(int a){return a+1;}
不包含函數實現,只包含函數名的叫做函數的聲明,一般位於.h文件中。如:
int func(int a);
2.定義和初始化是針對變數的概念:
int a;就是變數的定義
a=0;就是變數的初始化

『貳』 C語言中函數什麼時候聲明,什麼時候定義最好舉例說明。

函數可以在調用函數的函數(比如main函數)之前定義,這樣就無需聲明了;

舉例:

intadd(intx,inty){returnx+y;}//在編譯程序編譯到main的調用add之處時,由於已經編譯過add的函數了,因此編譯程序已經知曉調用規則,因此可以省略聲明語句
voidmain(){intx=5,y=6,c;c=add(x,y);printf("%d ",c);}

如果函數在調用函數的函數之後定義,為了通知編譯程序要調用函數的格式,需要在調用函數的函數前添加函數的聲明。

舉例:

intadd(intx,inty);//函數聲明也可以簡單地寫成intadd(int,int);通知編譯程序main中調用add的規則即可
voidmain(){intx=5,y=6,c;c=add(x,y);printf("%d ",c);}
intadd(intx,inty){returnx+y;}

『叄』 c語言的定義與聲明是什麼

聲明就是聲明一下我用到的變數或者類型,變數或者類型的實際定義並不一定在本文件內。

給變數分配了空間才叫做定義,否則就是聲明
比如extern int a; 是聲明,a的定義是在別處,這里並沒有為a分配空間。
比如int a;即是定義
函數以及類型,聲明就是用函數或者類型的頭部來聲明
比如 struct x;聲明 struct x{};定義
比如 int fun();聲明 int fun(){}定義

『肆』 c語言中函數定義和聲明有什麼區別

從C語言編譯器的角度來看,函數聲明只是一種協議,它告訴了調用者在調用這個函數之前需要給他什麼參數,一般參數是通過寄存器或者壓棧的方式傳給被調用函數的,具體這些參數如何使用以及返回什麼值到相應的寄存器里返回給調用者則是定義所描述的。

熱點內容
linuxjvm監控 發布:2025-03-04 19:16:24 瀏覽:108
池田演算法 發布:2025-03-04 19:02:51 瀏覽:283
androidusb共享 發布:2025-03-04 19:02:06 瀏覽:170
安卓左上角數字代表什麼 發布:2025-03-04 19:01:32 瀏覽:812
江都編程貓 發布:2025-03-04 19:01:31 瀏覽:598
第五人格二級密碼如何強制修改 發布:2025-03-04 18:51:04 瀏覽:232
秒拍視頻怎樣上傳騰訊 發布:2025-03-04 18:39:37 瀏覽:42
存儲過程效率 發布:2025-03-04 18:28:12 瀏覽:220
源碼怎麼生成的 發布:2025-03-04 18:28:01 瀏覽:694
初中解壓舞蹈 發布:2025-03-04 18:06:13 瀏覽:779