エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
なぜCでは値を返す代わりにポインタに直接代入する手法がとられるのですか?
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
なぜCでは値を返す代わりにポインタに直接代入する手法がとられるのですか?
回答 (10件中の1件目) 以下の回答の C言語の関数で、欲しい値を戻り値とせず、引数として渡してセットす... 回答 (10件中の1件目) 以下の回答の C言語の関数で、欲しい値を戻り値とせず、引数として渡してセットするのはなぜですか? 2a,3a,4aのパターンだと思いますが、レジスタに乗らないサイズのデータを関数から返すために、そのデータを保持するメモリ領域が必要なのですが、その領域を呼び出し先で確保し返り値としてリターンすると、つまりmallocしてそのブロックへのポインタをリターンすると、領域の確保責任と開放責任を、複数関数間にまたがって分担することになり、そうしないためです。関数間の約束ごとを減らす、カプセル化、疎結合化、モジュラリティ向上の意味もあるわけです。 また別の見方をする...