「C言語/関数」の版間の差分

削除された内容 追加された内容
なお、「return a;」などのように戻り値をつかって 計算結果の数値を 呼び出しもとの関数に送信したりする方法は、じつは、あまり実用的ではなく、現実には不便な場合が多いのである。な
:また、returnはエラーの有無を判定結果を呼び出しもと関数に送信するときに使用することが、実務では多い。たとえば if文などで、想定外の事態がなければ0を返却するようにプログラムを
100 行
 
 
== ポインタの必要性 ==
ように、C言語の(ユーザーが自分で定義する)「関数」は、かなり特殊なシステムである。そのため、「ポインタ」という機能をつかわないと、あまり価値のある作業が、関数では、できない場合が多い。
 
C言語の入門書に書いてあるプログラムで、ポインタを使わなくても利用できる(ユーザー定義)関数は、むしろ珍しいプログラムなのである。画面に文字などを表示するだけなら、ポインタを使わなくても、そのようなアルゴリズムを構築できるので、そのようなプログラムがC言語の入門書の『関数』の章に書かれるのであろう。
109 ⟶ 110行目:
:しかも、1つの数値しか送れないし、
など、いろんな欠点がある。
 
:また、returnはエラーの有無を判定結果を呼び出しもと関数に送信するときに使用することが、実務では多い。たとえば if文などで、想定外の事態がなければ0を返却するようにプログラムを記述して、いっぽう想定外があれば-1を返却する、などのように、返却値の値により、想定外の有無を送信することが、実務などで多い。
 
C言語の入門書で、「return a+b;」などのように、return文で計算結果を送信する記述が書かれてるのは、初心者の学習のための配慮(はいりょ)なのであり、じつは、あまり実務的ではないプログラムである。そもそも、わざわざ別関数で「a+b」を計算せずとも、最初からmain関数内で「a+b」を計算すれば済む。
 
また、入門書で、ポインタの章と関数の章が別々に書かれていることが多いのは、初心者のための配慮(はいりょ)なのであり、じつは、現実では、ポインタと関数を別々に考えるのは、あまり実用的ではないだろう。