我正在开发Ruby c扩展,我有以下c程序代码,
VALUE var = myFunction(arg1, arg2);
int varType = TYPE(var);
printf("Type of the var is :: %d", varType);
以上printf给出如下输出:
Type of the var is :: 34
由于myFunction是inbuild函数,我不知道该函数的返回类型。 任何人都能告诉我myFunction返回的“var”变量的类型吗? 提前谢谢。
答案 0 :(得分:3)
TYPE
宏返回ruby.h中枚举的值。从那里开始,34是T_DATA,它是wrapped C structure。
答案 1 :(得分:0)
var RETURNING FROM MyFunction的类型为VALUE
和VALUE是在ruby.h中定义的typedef
定义
typedef unsigned long VALUE;