next up previous contents
Next: 7.7.2 可変引数サポート - 特殊演算子 Up: 7.7 可変引数 Previous: 7.7 可変引数

7.7.1 可変引数サポート - 特殊変数

Cmmでは、可変引数に対応できるように関数本体内でのみ使える特殊変数を提供してい ます。それは、以下の3つです。

$# 引数の数
$* 引数の値の配列
$[<数>] 第<数>番目の引数の値。<数>は、0から$#-1までのいずれか

可変引数を使ったサンプルプログラムを以下に示します。


func ShowArg () {

var i ;

println ("argcnt = ", $#) ;
println ("argarray = ", $*) ;

for (i = 0 ; i < $# ; i++) {
println ("ARG no.", i, " value = ", $[i]) ;
}
println () ;
}

ShowArg () ;
ShowArg (0, 1) ;
ShowArg ("This", "is", "a", "pen") ;

このプログラムの実行結果は、以下のようになります。

argcnt = 0
argarray = []


argcnt = 2
argarray = [0, 1]
ARG no.0 value = 0
ARG no.1 value = 1


argcnt = 4
argarray = [This, is, a, pen]
ARG no.0 value = This
ARG no.1 value = is
ARG no.2 value = a
ARG no.3 value = pen


next up previous contents
Next: 7.7.2 可変引数サポート - 特殊演算子 Up: 7.7 可変引数 Previous: 7.7 可変引数
Tetsuo Ono
1998-11-05