1 #undef G_DISABLE_ASSERT 2 #undef G_LOG_DOMAIN 3 4 #include <glib.h> 5 6 #define SIZE 100000 7 8 guint32 array[SIZE]; 9 10 static gint sort(gconstpointer a,gconstpointer b,gpointer user_data)11 sort (gconstpointer a, gconstpointer b, gpointer user_data) 12 { 13 return *(guint32*)a < *(guint32*)b ? -1 : 1; 14 } 15 16 int main(int argc,char ** argv)17 main (int argc, char **argv) 18 { 19 int i; 20 21 for (i = 0; i < SIZE; i++) 22 array[i] = g_random_int (); 23 24 g_qsort_with_data (array, SIZE, sizeof (guint32), sort, NULL); 25 26 for (i = 0; i < SIZE - 1; i++) 27 g_assert (array[i] <= array[i+1]); 28 29 /* 0 elements is a valid case */ 30 g_qsort_with_data (array, 0, sizeof (guint32), sort, NULL); 31 32 return 0; 33 } 34