我在我的演講文件中發現了這個代碼。 這是一個泛型函數,得到一個比較功能和數組和排序void *的指針,以及通用的BUBBLE SORT
typedef Relation (*CmpFunction)(void*, void*);
void sort(void **array, int n, CmpFunction compare){
int i, j;
void* tmp;
assert(array !=NULL && compare != NULL);
for(i=0; i<n; i++) {
for(j=i+1; j<n; j++) {
if(compare(arr[i], arr[j])==Left) {
tmp = array[i];
array[i] = array[j];
array[j] = tmp;
}
}
}
}
關係是冒泡排序是:枚舉類型(不感興趣)。 我的問題是,爲什麼排序()得到
無效**,
爲什麼不是
無效*
。 P.S講座的作者是故意的,但我無法弄清楚。
檢查此鏈接:[有點泛泛的實現](http://en.literateprograms.org/Bubble_sort_%28C%29) –