2011-02-16 105 views
3

這是Make Controller固件的一些C代碼。我熟悉void指針是什麼,但我從來沒有見過像這個函數的第一行那樣的語法。那究竟是完成了什麼?這個void指針發生了什麼?

void MakeStarterTask(void* parameters) 
{ 
    (void)parameters; 
    Run(); 
    TaskDelete(NULL); 
} 

回答

5

它「使用」parameters因此編譯器不會發出關於未使用參數的警告,但表達式本身不會產生任何結果。任何表達式都可以轉換爲void,這會丟棄結果。 (請記住,表達仍然評估; to make an expression completely ignored is trickier。)

+0

謝謝,這是有道理的。 – Andrew 2011-02-17 03:43:19

0

指示編譯器不要抱怨未使用的parameters參數。