mirror of
https://github.com/chai2010/advanced-go-programming-book.git
synced 2025-05-24 20:52:22 +00:00
20 lines
434 B
Go
20 lines
434 B
Go
// Copyright © 2018 ChaiShushan <chaishushan{AT}gmail.com>.
|
|
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
|
|
|
package qsort
|
|
|
|
/*
|
|
#include <stdlib.h>
|
|
|
|
typedef int (*qsort_cmp_func_t)(const void* a, const void* b);
|
|
*/
|
|
import "C"
|
|
|
|
import "unsafe"
|
|
|
|
type CompareFunc C.qsort_cmp_func_t
|
|
|
|
func Sort(base unsafe.Pointer, num, size int, cmp CompareFunc) {
|
|
C.qsort(base, C.size_t(num), C.size_t(size), C.qsort_cmp_func_t(cmp))
|
|
}
|