2016-10-13 3 views
0

Во время вызова этой функции, в чем цель добавления круглых скобок вокруг void здесь?Скобки вокруг возвращаемого значения при вызове функции в C

//Declaration 
    Std_ReturnType IsoMgr_WriteErrorCode(/*IN*/const IsoMgr_ErrorCode_t ErrorCode); 
    //Calling Instance 
    (void)IsoMgr_WriteErrorCode(ErrorCode); 
+0

У меня нет цели. Вы можете безопасно удалить его. –

+0

BTW как объявляется 'IsoMgr_WriteErrorCode'? –

+3

Это может быть явным указанием программиста на то, что возвращаемое значение не используется. –

ответ

3

Некоторые компиляторы могут выдавать предупреждения, когда возвращаемое значение функции не используется.

Это способ отключить эти предупреждения. Он не имеет другой цели и не влияет на созданный машинный код.

0

Когда вы пишете

IsoMgr_WriteErrorCode(ErrorCode); 

Эта линия будет игнорировать возвращаемое значение, если таковые имеются. Компилятор не знает, знаете ли вы, как программист об этой конкретной вещи, чтобы могли быть созданы предупреждения.

Написав void перед функцией, вы сообщаете компилятору, что вы знаете, что игнорируете возвращаемое значение и поэтому хотите исправить какие-либо предупреждения из-за этого.

(void)IsoMgr_WriteErrorCode(ErrorCode);