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

[dennou-ruby:000454] Re: proto2c



ごとけんです

In message "[dennou-ruby:000448] Re: proto2c"
    on 00/11/01, Masato Shiotani <shiotani@xxxxxx> writes:
>たとえば, 以下のような FORTRAN プログラムで: 
>
>	program main
>
>	character cx*10
>
>	call sub1(cx)
>	write(*,*) cx
>
>	end
>*	---
>	subroutine sub1(cx)
>
>	character cx*(*)
>
>	cx='abc'
>
>	end
>
>subroutine の中では 3 文字しか代入しなくても, main プログラムでは 10
>文字分確保してあるので, f2c 化したときに付加される長さ情報は 10 なんだ
>と思っていたのですが. 

上の例での10を決める根拠が欲しいのです。

mainに相当する部分がラッパーなのでf2cで得るのでなくCで書く必
要があり、その際にf2cで得たsub_(char*,long)を sub1_(cx, len) 
と呼ぶために、長さlenを決めなくてはなりません。で、lenを決め
る場合には、sub1側で想定しているcxの最大長を知る必要があるわ
けです。

-- gotoken