
26/03/2009, 13:18
|
| | Fecha de Ingreso: febrero-2004
Mensajes: 12
Antigüedad: 21 años, 1 mes Puntos: 0 | |
Ordenación qsort con array de struct Hola de nuevo.
Tengo esto:
struct salida{
long accesos;
char *nombre,*usuario,*grupo;
};
struct salida *a = malloc ( sizeof(struct salida) *128); //por ejemplo
y quisiera hacer una ordenación por nombre desc y otra por accesos del array. Pero no los hacen:
int comparar_acceso(const void *a, const void *b)
{
struct salida *ia = (struct salida *)a;
struct salida *ib = (struct salida *)b;
return (int)(ia->acceso - ib->acceso);
}
int comparar_nombre(const void *a, const void *b)
{
struct salida *ia = (struct salida *)a;
struct salida *ib = (struct salida *)b;
return strcmp(ia->nombre, ib->nombre);
}
size_t structs_len = sizeof(a) / sizeof(struct salida);
qsort(a, structs_len, sizeof(struct salida), comparar_nombre);
Gracias |