我的结构声明为:
#define Pairs struct pairs
struct pairs {
char *s;
int occur;
Pairs *next;
};
在我的主语中,我声明我的双倍点为
void main() {
Pairs **nTable = newFilledTable(hashTable,htSize,elementsCount);
qsort(nTable, elementsCount, sizeof(Pairs*), comparator);
}
其中newFilledTable设置表[i] = aPairsPtr,而我的比较器函数为
int comparator(const void* p, const void* q){ /* Function to compare two elements/nodes for the qsort() function */
Pairs vp,vq;
vp = *(Pairs *)p;
vq = *(Pairs *)q;
return vp.occur-vq.occur;
}
但是这不想对表进行排序,我是否必须将表设置为一维数组? (a [])而不是两倍的点数?