Bonjour à tous,
Le code compile mais:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 char *buff[2048] = {0};
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 while ( NULL != fgets( basebuf, sizeof basebuf, Input ) ) { if ( ( ln = strlen( basebuf ) ) > 1 ) { buff[ligne] = ( char * ) malloc( ( ln * sizeof( char ) ) + 1 ); if ( *( buff + ligne ) != NULL ) strcpy( buff[ligne], basebuf); else printf ( "\nLigne: %d Mémoire non allouée. %p\n", __LINE__, *( buff + ligne ) ); ligne++; } } fflush( stdout ); return ligne-1; }
crash:
Pourquoi ne pas envoyer strcmp (ça ne fonctionne pas) ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 /* de la faq*/ int pstrcmp(const void * p1, const void * p2) { return strcmp(*(char * const *)p1, *(char * const *)p2); } /* MAIN */ int main(void) { int i; int lines; lines = fichierdInput(stdin); printf ("\n%d\n", lines); qsort (buff, lines, sizeof(buff), pstrcmp);
Partager