2013-09-30 52 views
0

我收到以下錯誤爲下面的代碼:C的結構 - 錯誤:參數名稱省略

kernel/proc.c: In function ‘getpinfo’: 
kernel/proc.c:495: error: parameter name omitted 

的代碼如下:

int 
getpinfo(struct pstat *) 
{ 
} 

能否請你告訴我,我我錯過了結構或代碼?

+1

getpinfo(結構的pstat \ *) - 它說:「指向一個結構的pstat但在C在聲明/定義你需要命名參數功能好吧,像這樣:int add(int a,int b); a和b是名字,int是一個類型;在你的例子中,struct pstat *是類型,名字缺失(這正是編譯器告訴你的): ) –

回答

4
 int 
    getpinfo(struct pstat *) 
     { 
     } 

沒有給出任何參數名稱。

Function definition should contain List of parameters, with valid type and parameters names.where as in declarations parameter Names are optional

這應該是

 int 
    getpinfo(struct pstat *some_name) 
     { 
     } 
3

的參數到功能既需要類型名稱,但struct pstat *只是類型

你可以給它任何你喜歡的名字:

int 
getpinfo(struct pstat * s) 
{ 
}