この関数の呼び出し時に、ここでvoidの周りにかっこを追加する目的は何ですか?C言語で関数を呼び出すときの戻り値のまわりの括弧
//Declaration
Std_ReturnType IsoMgr_WriteErrorCode(/*IN*/const IsoMgr_ErrorCode_t ErrorCode);
//Calling Instance
(void)IsoMgr_WriteErrorCode(ErrorCode);
この関数の呼び出し時に、ここでvoidの周りにかっこを追加する目的は何ですか?C言語で関数を呼び出すときの戻り値のまわりの括弧
//Declaration
Std_ReturnType IsoMgr_WriteErrorCode(/*IN*/const IsoMgr_ErrorCode_t ErrorCode);
//Calling Instance
(void)IsoMgr_WriteErrorCode(ErrorCode);
一部のコンパイラは、関数の戻り値が使用されていないときに警告を出力することがあります。
これは、これらの警告を消す方法です。他の目的はなく、生成されたマシンコードには影響しません。
あなたがもしあれば、戻り値を無視します
IsoMgr_WriteErrorCode(ErrorCode);
この行を記述する場合。コンパイラは、あなたがプログラマとしてこの特定のことを認識しているかどうかを知らないので、警告が生成される可能性があります。
関数の前にvoidを書くと、戻り値を無視していることをコンパイラに知らせるので、それによって警告が出ます。
(void)IsoMgr_WriteErrorCode(ErrorCode);
です。目的はありません。あなたはそれを安全に取り外すことができます。 –
ところで、 'IsoMgr_WriteErrorCode'はどのように宣言されていますか? –
戻り値が使用されていないことをプログラマが明示的に示すことがあります。 –