【问题标题】:How to declare argc, argv in ruby ffi, and how to pass proper values to it?如何在 ruby​​ ffi 中声明 argc、argv,以及如何将正确的值传递给它?
【发布时间】:2011-08-19 18:01:22
【问题描述】:

回答:这个函数的正确 ruby​​ ffi 代码是什么:

void glutInit(int *argc, char ** argv);

attach_function :glutInit, [:pointer, :pointer], :void

回答:如何处理 C 字符串数组? 像指针一样!

仍然没有答案:如何更改 ARGV 以匹配参数类型?

如果您知道如何在 Ruby 脚本中“保持原样”C argc 和 argv,它也会有所帮助(例如,python 有专门的库,除了 ARGV 之外,我不知道 Ruby 有任何类似的东西)。

【问题讨论】:

    标签: ruby ffi


    【解决方案1】:

    这里有人写过这个: http://zegoggl.es/2009/05/ruby-ffi-recipes.html

    您可以在 attach_function 调用中使用 :varargs,当您调用 gluInit 时,您会传递一个类型/值对数组。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-13
      相关资源
      最近更新 更多