Buongiorno a tutti!
Ho un problema con un programma che ordina delle stringhe immesse da tastiera.
codice:
/* Ordinamento di stringhe */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void stringBubbleSort( char *strPtr, int numString );
main()
{
int j;
char nomi[10][20];
char *stringPtr[10];
for ( j = 0; j < 10; j++ )
{
printf("Nome n. %d = ", j);
scanf("%s", &nomi[j][0]);
stringPtr[j] = &nomi[j][0];
}
stringBubbleSort(*stringPtr, 10);
for ( j = 0; j < 10; j++ )
printf("Nome n. %d = %s\n", j, stringPtr[j]);
printf("\n\n");
system("pause");
}
void stringBubbleSort( char *strPtr, int numString )
{
unsigned short scambio;
int i;
char *temp;
do {
scambio = 0;
for ( i = 0; i < numString - 1; i++ )
{
if ( strcmp(strPtr[i], strPtr[i + 1]) > 0 )
{
temp = strPtr[i];
strPtr[i] = strPtr[i + 1];
strPtr[i + 1] = temp;
scambio = 1;
}
}
} while (scambio);
}
Nella riga 41 : if ( strcmp(strPtr[i], strPtr[i + 1]) > 0 ) mi dice:
invalid conversion from `char' to `const char*'
Qualcuno di voi mi può aiutare? Grazie!