作者guava0425 (Milton)
看板Ruby
标题[问题]在ruby 执行外部程式(C++)的方法?
时间Sun Apr 28 14:24:47 2013
环境:
Ruby 1.8.7
状况:
我想要在RUBY程式写让他能执行我外部已经写好的C++程式,
并要能带入参数,请问一下有哪些方法?
目前有去查说SWIG可以但是好复杂看不懂,
还有%x,exec,system,IO.popen这些方法适用吗?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.123.107.59
1F:→ hSATAC:FFI? 04/28 15:14
2F:推 mars90226:直接执行外部程式的话用system("你的程式 参数") 04/28 15:23
3F:→ mars90226:想要用output出来的资料的话,用%x"你的程式 参数" 04/28 15:25
4F:→ guava0425:请问我的c++程式要放在哪? 我可以把RUBY输入的参数喂给 04/28 16:04
5F:→ guava0425:C++程式吗? 04/28 16:04
6F:推 zero00072:猜你想用的是这样:`a.out #{arg1} #{arg2} #{arg3}` 04/29 02:21
7F:→ zero00072:Ruby 直接参数是:ARGV[0]、ARGV[1]、ARGV[2]……。 04/29 02:22
8F:→ zero00072:所以变成 `a.out #{ARGV[0]} #{ARGV[1]}` 这样。 04/29 02:23
9F:推 AIGecko:用ShellExecute也可以吧 Ruby可以呼叫Win32API 04/29 17:00
10F:→ AIGecko:str="";ARGV.each{|arg| str<<arg<<" "} 04/29 17:03
11F:推 aquarianboy:FFI +1 04/30 00:19
12F:→ Jazznight:pipe open => IO.popen(command){|pipe| xx=pipe.read} 05/13 23:06