2 Cree su función de comparación . La función de comparación acepta dos argumentos de tipo " void * " , que deben ser emitidos a un tipo de datos específico y luego comparar. Si el primer elemento es menor que el segundo , un valor negativo debe ser devuelto de esta función . Si el primer elemento es mayor que el segundo , devolver un valor positivo . Si ambos elementos son iguales , devolverá cero :
CompareIntegers int ( const void * arg1 , const void * arg2 )
{
int val1 = * ( int * ) arg1 ;
int val2 = * (int *) arg2 ;
if ( val1 < val2 )
{
return -1 ;
} else if ( val1 > val2 )
{ return 1 ; }
//si hemos llegado hasta aquí , ambos elementos son iguales
return 0; }
3
En su código , llame a la función qsort . La función qsort toma cuatro argumentos: . Un puntero a la matriz para clasificar, el número de elementos en el array, el tamaño de cada elemento de la matriz , y la función de comparación
//tipo del array de enteros
qsort ( arrayToSort , NumberOfElements , sizeof (int ) , CompareIntegers ) ;