1. ホーム
  2. c

[解決済み] Cの戻り値を括弧で囲む

2023-07-27 17:05:34

質問

ANSI Cのコードで、一つの戻り値を括弧で囲んでいるのをよく見かけます。

このようなものです。

int foo(int x) {
  if (x)
    return (-1);
  else
    return (0);
}

このような場合、なぜ戻り値の周りに()を使うのでしょうか?何か思い当たることはありますか?その理由が見当たりません。

どのように解決するのですか?

特に理由はないのですが、古い慣習なので。

スペースを節約するために、プログラマはしばしば最終的な計算をそれ自身の行ではなく return 行で行い、括弧はこのように返される単一のステートメントであることを見やすくするためにあります。

return (x+i*2);

の代わりに

int y = x+i*2;
return y;

括弧が癖になり、定着してしまった。