[问题]在ruby 执行外部程式(C++)的方法?

楼主: guava0425 (Milton)   2013-04-28 14:24:47
环境:
Ruby 1.8.7
状况:
我想要在RUBY程式写让他能执行我外部已经写好的C++程式,
并要能带入参数,请问一下有哪些方法?
目前有去查说SWIG可以但是好复杂看不懂,
还有%x,exec,system,IO.popen这些方法适用吗?
作者: hSATAC (cAt Ash)   2013-04-28 15:14:00
FFI?
作者: mars90226 (火星人)   2013-04-28 15:23:00
直接执行外部程式的话用system("你的程式 参数")想要用output出来的资料的话,用%x"你的程式 参数"
楼主: guava0425 (Milton)   2013-04-28 16:04:00
请问我的c++程式要放在哪? 我可以把RUBY输入的参数喂给C++程式吗?
作者: zero00072 (赤迷迭)   2013-04-29 02:21:00
猜你想用的是这样:`a.out #{arg1} #{arg2} #{arg3}`Ruby 直接参数是:ARGV[0]、ARGV[1]、ARGV[2]……。所以变成 `a.out #{ARGV[0]} #{ARGV[1]}` 这样。
作者: AIGecko (师大猫耳控)   2013-04-29 17:00:00
用ShellExecute也可以吧 Ruby可以呼叫Win32APIstr="";ARGV.each{|arg| str<<arg<<" "}
作者: aquarianboy (我是没牌的营养师!)   2013-04-30 00:19:00
FFI +1
作者: Jazznight (好一个周末又没了)   2013-05-13 23:06:00
pipe open => IO.popen(command){|pipe| xx=pipe.read}

Links booklink

Contact Us: admin [ a t ] ucptt.com