我正在嘗試使用ei_get_type()(ei),但我無法找到'type'字段的記錄位置。我查看了ei.h但我能找到的是一個以「ERL_」開頭的常量列表。erlang:ei_get_type():其中是「類型」字段的已定義常量?
#define ERL_SMALL_INTEGER_EXT 'a'
#define ERL_INTEGER_EXT 'b'
#define ERL_FLOAT_EXT 'c'
#define ERL_ATOM_EXT 'd'
#define ERL_REFERENCE_EXT 'e'
#define ERL_NEW_REFERENCE_EXT 'r'
#define ERL_PORT_EXT 'f'
#define ERL_PID_EXT 'g'
#define ERL_SMALL_TUPLE_EXT 'h'
#define ERL_LARGE_TUPLE_EXT 'i'
#define ERL_NIL_EXT 'j'
#define ERL_STRING_EXT 'k'
#define ERL_LIST_EXT 'l'
#define ERL_BINARY_EXT 'm'
#define ERL_SMALL_BIG_EXT 'n'
#define ERL_LARGE_BIG_EXT 'o'
#define ERL_NEW_FUN_EXT 'p'
#define ERL_FUN_EXT 'u'
這是正確的名單?我不確定,因爲er_get_type()的原型具有* int **類型字段,而ei.h文件定義char上述常量。
注意:'erl_interface'包中還有其他'常量'在這裏沒有列出。
「SMALL_TUPLE」和「LARGE_TUPLE」之間的區別是什麼? – jldupont 2009-09-28 20:12:01
什麼是「SMALL_INTEGER」? 16位? 「LARGE_BIG」怎麼樣? – jldupont 2009-09-28 20:12:39