Problema Comparazione Stringhe [C]

di il
1 risposte

Problema Comparazione Stringhe [C]

Salve, volevo esercitarmi un pò con le stringhe quindi ho ideato una funzione di nome ''semaforo'' che riceve dal main 3 stringhe dichiarate in input e 1 stringa utente.

Vorrei confrontare una stringa dichiarata da tastiera con la scanf con una delle tre stringhe con i caratteri già dichiarati, esempio:
char *stringa1="verde" o allo stesso modo char stringa1[6]={'v','e','r','d','e'} oppure char stringa1[6] e poi strcpy(stringa,"verde")
char utente[7]

Fin qui tutto ok, ma quando vado a comparare la mia stringa con quelle 3, il programma invece di stampare un messaggio termina.
Ho provato anche ad includere string.h e usare la funzione strcmp ma o sono io che non so usarla o non posso comparare più di 2 stringhe o mi restituisce un intero che non mi serve a niente.
Ho provato anche con lo switch ma sono costretto a fare Scelta==INTERO anziché Scelta==STRINGA (che è quello che voglio).
Grazie a tutti in anticipo.
Vi mostro il codice completo:
#include <stdlib.h>
#include <stdio.h>


int main()
{
	char *stringa1="verde",*stringa2="giallo",*stringa3="rosso",utente[7];

	printf("VERDE\n");
	printf("GIALLO\n");
	printf("ROSSO\n");


    printf("Inserisci il colore: \n");
    scanf("%s",utente);


	if(stringa1==utente){
	puts("procedi");

        }

	if(stringa2==utente){
		puts("sbrigati");

		}
	if(stringa3==utente){
		puts("fermati");

		}


	system("pause");
	return 0;

}

1 Risposte

Devi accedere o registrarti per scrivere nel forum
1 risposte