Problema con un confronto fra variabili dello struct in codice C

Pubblicità

Ashima

Nuovo Utente
Messaggi
3
Reazioni
0
Punteggio
20
Salve a tutti, mentre stavo testando la parte del codice che riguardava la classifica dei tempi in un gioco mi è comparso l'errore:
" [Error] subscripted value is neither array nor pointer nor vector "
Il codice è seguente:
1526986981684.webp
Errore compare in tutte le righe del codice in cui uso le variabili dello struct;
Mentre il codice dello struct è il seguente:

1526986812358.webp
Scusate ma ho appena cominciato ad imparare il linguaggio C e chiedevo se qualcuno mi poteva dare una mano. o anche qualche consiglio.
 
C’è un problema per quanto riguarda il passaggio del vettore come parametro.
Ah e comunque il C mette già a disposizione algoritmi d’ordinamento, se ti interessa.
 
Altro errore, la dichiarazione della variabile Temp (guarda bene, non deve essere un intero).

Le variabili sec1 e sec2 sono dichiarate e non usate, un compilatore che permette di assegnare livelli di avvertimento te lo farebbe notare.

In genere quando si crea una funzione la si crea in modo che funzioni in molte occasioni, come la hai dichiarata tu ordina solo vettori di lunghezza 10. Una dichiarazione più formale avrebbe un secondo parametro, la lunghezza del vettore.
 
Aggiungo che pure la struttura è sbagliata. Il tempo (la variabile secondi) deve essere di tipo double o float e non puoi inizializzare così il vettore. Dovresti al massimo:
C:
struct posizione {
    char nome[31];
    double secondi;
};
struct posizione persone[2] = { { "Marco", 3.134 }, { "Matteo", 3.1902 } };
 
Okay Grazie a tutti per l'aiuto, ho cominciato in questi giorni ad usare le struct e non è che ci ho capito molto...
 
Pubblicità
Pubblicità
Indietro
Top