From: DZE04102@... (sugi)
Subject: [TSruby:194] 拡張ライブラリで質問
Date: Fri, 7 Apr 2006 11:06:15 +0900 (JST)
> def hoge(lines,pt)
> return lines.collect{|e|
> [e[0]+pt[0],e[1]+pt[1],
> e[2]+pt[0],e[3]+pt[1]]}
> end
>
> lines=[[1,2,3,4],[5,6,7,8]]
> pt=[2,1]
> p hoge(lines,pt) # => [[3, 3, 5, 5], [7, 7, 9, 9]]
こういう問題ならばわざわざCで書かなくてもNArrayという拡張ライブラリを
利用するといいと思います。NArrayはCの配列にいろいろと演算を定義したも
のです。Rubyの配列をCで扱うよりも速いと思われます。
> というような hoge をC言語で書くにはどうすれば良いのでしょう
> か。
README.EXT.jaを読みました?昔自分が初めて拡張ライブラリを書いたとき、
それだけを唯一の情報源として頼りにしていました。array.cも参考になると
思います。
--
rubikitch
http://www.rubyist.net/~rubikitch/