エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
第6回(最終回) 関数の機能 ~ 関数間での連携 | gihyo.jp
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
第6回(最終回) 関数の機能 ~ 関数間での連携 | gihyo.jp
前回は、関数[1]が呼ばれた際に、関数内での局所的な情報をどのように管理するかについて説明しました。... 前回は、関数[1]が呼ばれた際に、関数内での局所的な情報をどのように管理するかについて説明しました。 今回は、関数呼び出しにおける連携方法について説明しようと思います。 引数と戻り値 引数 関数の呼び出し元は、さまざまな形式で引数を指定します。たとえば、 自身の局所変数の値 自身に指定された引数 他の関数の呼び出し結果 上記の値から導出された値(例: 四則演算/構造体参照等) 一方で(一般的な)言語仕様上から見て、呼び出された側にとっての引数は、関数終了まで領域が保持されている=終了後は必要ない、という点では局所変数と実質的に差異がありません。 そのため、Intel x86アーキテクチャで関数呼び出しを実現する場合、呼び出し元は引数をスタック上に格納します。 リスト1 呼び出し元での引数格納 movl $1, 0(%esp) movl $15, 4(%esp) 呼び出し先の関数は、スタック