我尝试手动从libncurses.so
导入符号,这对于函数指针和普通变量(如stdscr
或COLORS
)来说效果很好,但是ncurses.h
也定义了一个名为acs_map
的全局数组:
extern NCURSES_EXPORT_VAR(chtype) acs_map[];
我如何使用dlsym()
导入它?我的问题是acs_map
是一个数组,而不是指针,所以我不确定是否允许它这样做:
chtype **ptr = dlsym(lib, "acs_map");
chtype *acs_map = *ptr;
但是我想我必须使用一个指针,因为我不能给一个数组变量赋一个新的值,是吗?那么使用dlsym()
导入acs_map
的推荐方法是什么?
1条答案
按热度按时间but5z9lq1#
由于数组衰减为指向其第一个成员的指针,因此可以使用指针类型来引用数组对象。