【发布时间】:2019-03-29 19:39:23
【问题描述】:
我有这段非常简单的代码
GTree* teste = g_tree_new(cmp);
for(int i = 0; i < 10; i++){
g_tree_insert(teste, &i, &i);
printf("%d", g_tree_nnodes(teste));
}
“cmp”函数是
int cmp(const void *a, const void* b){
int* ia = (int*)a;
int* ib = (int*)b;
return (*ia - *ib);
}
我不明白为什么,但节点的数量总是一个。似乎比较函数没有被正确使用,它总是断言为 0。
【问题讨论】: