if ((ret = func()) == -1)という書き方


C言語で関数の戻り値をチェックする方法で

[code]

    if ((ret = func()) == -1)
    
[/code]

という書き方があります。

これは

[code]

    ret = func();
    if (ret == -1)
    
[/code]

と同じ意味なのですが、上記の書き方を検索して調べる時、どういうキーワードで調べればいいでしょうか? (Yoda
notationなどのように、名前はあるのでしょうか？ )

また、上記の書き方は、MISRACやその他コーディング規約においては、許可されたものなのでしょうか？




`if ((ret = func()) == -1)`との書き方は、一般的に「assignment in condition」、または「assignment
in conditional expression」と呼ばれると思います。

ほとんどのコーディング規則に許可されません。（MISRA 2004ではルール13.1）




`if ((ret = func()) == -1)`との書き方は、一般的に「assignment in condition」、または「assignment
in conditional expression」と呼ばれると思います。

ほとんどのコーディング規則に許可されません。（MISRA 2004ではルール13.1）

