C/C++ のプログラムから Ruby を呼び出す
単に「外部コマンド」を呼び出すのとは違う. Ruby インタプリタの状態が保持されるのがミソです.例えば、下のプログラムのように,Ruby 内の変数の値が残りつづけます.
#include<ruby.h>
int main()
{
ruby_init();
rb_eval_string("x = 100");
rb_eval_string("p x");
ruby_cleanup(0);
return 0;
}

単に「外部コマンド」を呼び出すのとは違う. Ruby インタプリタの状態が保持されるのがミソです.例えば、下のプログラムのように,Ruby 内の変数の値が残りつづけます.
#include<ruby.h>
int main()
{
ruby_init();
rb_eval_string("x = 100");
rb_eval_string("p x");
ruby_cleanup(0);
return 0;
}