Ejemplo n.º 1
0
static void
compare_sorts2 (void *base, size_t nel)
{
	size_t len = nel * sizeof (teststruct_t*);
	void *b1 = malloc (len);
	void *b2 = malloc (len);

	memcpy (b1, base, len);
	memcpy (b2, base, len);

	qsort (b1, nel, sizeof (teststruct_t*), compare_teststructs2);
	qsort_test_struct (b2, nel);

	assert (!memcmp (b1, b2, len));

	free (b1);
	free (b2);
}
Ejemplo n.º 2
0
static void
compare_sorts2 (void *base, size_t nel)
{
    size_t width = sizeof (teststruct_t*);
    size_t len = nel * width;
    void *b1 = malloc (len);
    void *b2 = malloc (len);

    memcpy (b1, base, len);
    memcpy (b2, base, len);

    qsort (b1, nel, sizeof (teststruct_t*), compare_teststructs2);
    qsort_test_struct ((teststruct_t **)b2, nel);

    for (size_t i = 0; i < nel - 1; ++i)
        assert (compare_teststructs2 ((char *)b2 + i * width, (char *)b2 + (i + 1) * width) <= 0);

    free (b1);
    free (b2);
}