Vertailualiohjelman pitää palauttaa negatiivinen luku, mikäli 1. alkio on pienempi kuin toinen, 0 mikäli ne ovat samoja ja positiivinen luku, mikäli 1. on suurempi ("erotuksen etumerkki"). Siis tässä tapauksessa lukujen vähennyslasku tuottaa valmiiksi halutunlaisen tuloksen.
...
/* Alkioiden vertailufunktio. */
int sort_function(const void *a, const void *b)
{
return *(int *)a - *(int *)b;
}
int main(void)
{
int i,x[KOKO];
for (i=0; i<KOKO; i++) x[i] = rand();
tulosta(x);
qsort((void *)x,KOKO,sizeof(x[0]),sort_function);
tulosta(x);
return 0;
}qsort - aliohjelman kutsussa pitää kertoa lajiteltavan taulukon (osaa lajitella vain taulukoita) alkuosoite, koko alkioina sekä kunkin alkion koko, sekä vertailufunktion osoite.
Huomattakoon, ettei kutsun viimeinen parametri sort_function aiheuta kutsua aliohjelmaan sort_function, vaan välittää qsort aliohjelmalle lajittelufunktion osoitteen. Kääntäjä tietää tämän eron siitä, ettei funktion nimen perässä ole sulkuja!