「ユーザー関数の定義」の編集履歴(バックアップ)一覧はこちら

ユーザー関数の定義」(2009/12/14 (月) 22:52:21) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

> ユーザー関数の定義は、キーワード ''def[ine]'' 又は ''def[unc]'' を用いて行います。 > C言語と同様、[[トップレベル]]でのみ関数の定義が可能です。(定義位置は呼出位置の前後どちらに置いても OK です。) 文法: def NAME([ARG1,ARG2,ARG3,...]){ .... } ** 引数も戻り値も無い関数の定義 def dot(){ # 呼び出される度に . 文字を1文字表示します。 putc('.') } dot() # 1回目の呼び出しです。 dot() # 2回目の呼び出しです。 dot() # 3回目の呼び出しです。 ** 複数の戻り値を持つ関数の定義 def cal4(x,y){ # 四則演算をする関数 cal4 を定義します。 return(x+y,x-y,x*y,x/y) # 和、差、積、商を計算して戻り値とします。 } add,sub,mul,div=cal4(2,3) # 引数 2 と 3 で関数 cal4 を呼出します。(4つの戻り値が得られます。) print("%f,%f,%f,%f\n",add,sub,mul,div) # 結果を表示します。( %f などの書式指定はC言語のものと同じです。) ** 引き数と戻り値 - 引き数と戻り値は、常に"値渡し"で渡され(戻され)ます。 - 実引数と仮引数の数が一致しない場合、余分なデータは無視され、不足するデータは未定義となります。 ** 関数のスコープ - ユーザー定義関数は、常に"グローバルスコープ"を持ちます。(システム定義関数も同じ。) &br() &br() &br()
> ユーザー関数の定義は、キーワード ''def[ine]'' 又は ''def[unc]'' を用いて行います。 > C言語と同様、[[トップレベル]]でのみ関数の定義が可能です。(定義位置は呼出位置の前後どちらに置いても OK です。) 関数定義の文法: def NAME([ARG1,ARG2,ARG3,...]){ .... } 関数呼出の文法: NAME([ARG1,ARG2,ARG3,...]) ** 引数も戻り値も無い関数の定義例 def dot(){ # 呼び出される度に . 文字を1文字表示します。 putc('.') } dot() # 1回目の呼び出しです。 dot() # 2回目の呼び出しです。 dot() # 3回目の呼び出しです。 ** 複数の戻り値を持つ関数の定義例 def cal4(x,y){ # 四則演算をする関数 cal4 を定義します。 return(x+y,x-y,x*y,x/y) # 和、差、積、商を計算して4つの戻り値とします。 } add,sub,mul,div=cal4(2,3) # 引数 2 と 3 で関数 cal4 を呼出します。 print("%f,%f,%f,%f\n",add,sub,mul,div) # 結果を表示します。( %f などの書式指定はC言語のものと同じです。) ** 引き数と戻り値 - 引き数と戻り値は、常に"値渡し"で渡され(戻され)ます。 - 実引数(Argument)と仮引数(Parameter)の数が一致しない場合、余分なデータは無視され、不足するデータは未定義となります。 - 戻り値は、関数 return() で戻します。(複数個の戻り値を指定できます。) ** 関数のスコープ - ユーザー定義関数は、常に"グローバルスコープ"を持ちます。(システム定義関数と同じ。) &br() &br() &br()

表示オプション

横に並べて表示:
変化行の前後のみ表示:
記事メニュー
目安箱バナー