gcc sort

Top Page

Reply to this message
Author: Patrick Dupre
Date:  
To: guilde
Subject: gcc sort
Bonjour,

Est-ce que quelqu'un peut me dire pourquoi dans cet exemple, le fait de mettre un 0
perturbe qsort ?

#include <stdio.h>
#include <stdlib.h>

double values[] = { 88, 56, 100, 0.0, 25, 3, -0.55e-5 };
double values2 [] = { 88, 56, 100, 2, 25, 3, -0.55e-5 };

int dcmpfunc (const void * a, const void * b) {
return ( *(double*)a - *(double*)b );
}

int main () {
int n;
double *val2 = (double*) malloc (7 * sizeof(double)) ;
double *val = (double*) malloc (7 * sizeof(double)) ;
for (n = 0 ; n < 7 ; n++) val [n] = values [n] ;
for (n = 0 ; n < 7 ; n++) val2 [n] = values2 [n] ;

qsort (val, 7, sizeof (double), dcmpfunc);
qsort (val2, 7, sizeof (double), dcmpfunc);

printf ("\nAfter sorting the list is: \n") ;
for (n = 0 ; n < 7; n++ ) printf("%g ", val [n]); printf ("\n") ;
for (n = 0 ; n < 7; n++ ) printf("%g ", val2 [n]); printf ("\n") ;

return(0);
}

===========================================================================
 Patrick DUPRÉ                                 | | email: pdupre@???
 Laboratoire interdisciplinaire Carnot de Bourgogne
 9 Avenue Alain Savary, BP 47870, 21078 DIJON Cedex FRANCE
 Tel: +33 (0)380395988
===========================================================================