【发布时间】:2015-07-24 20:39:25
【问题描述】:
您好,这个问题与 GLib、gpointer 相关。
我用 gpointer 类型创建一个值。
gpointer keys;
我调用了一个函数
insert_data(gpointer key);
我像这样将整数指针传递给这个函数。
int* p = malloc(sizeof(int));
*p = 1;
// gpointer is void* pointer, I cast it to integer type pointer here.
insert_data(p);
函数里面我想看p的值。
printf("%d\n", (int*)p);
它输出一些非常大的数字。从我这边看,它是 296304,不是实际值 1。 我想知道如何取消引用像 gpointer 这样的指针。
对于整数32位指针,char*指针,如何解引用?
谢谢
【问题讨论】:
标签: c pointers glib dereference