「ユーザー関数の定義」の編集履歴(バックアップ)一覧はこちら
ユーザー関数の定義 - (2009/12/14 (月) 22:42:31) の1つ前との変更点
追加された行は緑色になります。
削除された行は赤色になります。
> ユーザー関数の定義は、キーワード ''def[ine]'' 又は ''def[unc]'' で行います。
> 関数の定義位置は、その呼び出し位置の前後どちらに置いても OK です。
> 関数の引き数や戻り値に型の制約はありません。又、これらは常に値のコピーが渡され(戻され)ます。
** 引数も戻り値も無い関数の定義
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,...]){
....
}
** 引数も戻り値も無い関数の定義
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()
表示オプション
横に並べて表示:
変化行の前後のみ表示: