3

これは、MakeControllerファームウェアのCコードです。voidポインターとは何かはよく知っていますが、この関数の最初の行のような構文は見たことがありません。それによって正確に何が達成されているのでしょうか?

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

3 に答える 3

5

これは「使用」parametersするため、コンパイラは未使用のパラメータに関する警告を出力しませんが、式自体は何も実行しません。任意の式をにキャストできますvoid。これにより、結果が破棄されます。

(式は引き続き評価されることに注意してください。式を完全に無視するのは難しいです。)

于 2011-02-16T04:14:17.543 に答える
1

UNREFERENCED_PARAMETERマクロのように、参照されていないパラメーターに関するコンパイラーの警告を抑制するためにおそらくそこにあります。

于 2011-02-16T04:14:12.653 に答える
0

未使用のパラメーターについて文句を言わないようにコンパイラーに指示しparametersます。

于 2011-02-16T04:13:48.677 に答える