[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dennou-ruby:000553] Re: array dimension proto type



堀之内さま

金曜日はどうもありがとうございました。

In message "[dennou-ruby:000542] Re: array dimension proto type"
    on 00/11/11, Takeshi Horinouchi <horinout@xxxxxx> writes:

> >           CHARACTER*(*) CP
> > 
> > みたいなのはどう置き換えるという結論になったんでしょうか. 
> 
> これは諦めましょう。普通この長さは引数にされませんから。

proto2c で、CHARACTER*(*) (*) CPARA のような変数を扱えるよう
修正しています。

配列になっていない、CHARACTER*(*) の場合は、先日のお話通り、
適当なサイズを仮定しても大丈夫だと思います。

文字列の配列の場合は、文字列の長さと、配列の大きさの両方が分
からないと、うまくいかないような気がします。( 入力・出力とも
です。)
ラッパー内で文字列を全部くっつけてから CDCL に渡すので、文字
列の長さとしては個々のオブジェクトの長さではなく、宣言された
長さが必要になります。


その変数のリストです。

-- grph1 --
"CHARACTER*1, len o CKX in szfont"
"CHARACTER*1, len o CKY in szfont"
"CHARACTER*1, * o CLX in szqfnt"
"CHARACTER*1, * o CLY in szqfnt"
-- grph2 --
"CHARACTER*(*), * i CH in uxplba"
"CHARACTER*(*), * i CH in uxplbb"
"CHARACTER*(*), * i CH in uxplbl"
"CHARACTER*(*), * i CH in uxaxlb"
"CHARACTER*(*), * i CH in uyplba"
"CHARACTER*(*), * i CH in uyplbb"
"CHARACTER*(*), * i CH in uyplbl"
"CHARACTER*(*), * i CH in uyaxlb"
"CHARACTER*(*), * i CH in usaxlb"
"CHARACTER*(*), * i CH in usplbl"
-- math1 --
"CHARACTER*1, * i CX in indxcf"
"CHARACTER*1, * i CX in indxcl"
"CHARACTER*1, * i CX in nindxc"
"CHARACTER*80, * i CPLIST in cfsrch"
"CHARACTER*80, * i CFLIST in cfsrch"
"CHARACTER*8, * i CPS in rtiget"
"CHARACTER*8, * i CPS in rtlget"
"CHARACTER*8, * i CPS in rtrget"
"CHARACTER*8, * i CPS in rtcget"
"CHARACTER*80, * o CPARA in rtcget"
"CHARACTER*40, * i CPL in rliget"
"CHARACTER*40, * i CPL in rllget"
"CHARACTER*40, * i CPL in rlrget"
"CHARACTER*40, * i CPL in rlcget"
"CHARACTER*80, * o CPARA in rlcget"


このうちラッパーが必要な関数について、* を( 文字列の長さも
含めて) 引数名か数字に置き換えるよう、proto ファイルを修正
して頂けると嬉しいのですが。
( もし時間がなくて無理でしたら、後で自分でやってみますので
  そう言ってください。)
では、よろしくお願いします。


黒井 啓子