BlackJack4051 Inviato 14 Febbraio 2012 Condividi Inviato 14 Febbraio 2012 Salve a tutti Voglio creare un programma che gestisce delle stringhe di testo. Cioè voglio per esempio eseguire un'istruzione se la stringa inserita è uguale a una stringa che voglio io. Io ho provato a impostare il codice in questo modo e il compilatore non segnala nessun errore, ma non ottengo il risultato che voglio. #include <stdio.h> #include <string.h> int main (void) { char a[50]; printf("Inserisci una parola: "); scanf("%c", &a); if ( a == "ciao" ) { printf("%c", a); } return 0; } Grazie a tutti per le risposte!!!! Link al commento Condividi su altri siti Altre opzioni di condivisione...
jtagger Inviato 15 Febbraio 2012 Condividi Inviato 15 Febbraio 2012 naaaaaaa il confronto che stai facendo è tra l'indirizzo di memoria da cui parte il tuo array di char <a> e quello da cui parte la costante stringa non simbolica "ciao". Per i confronti tra stringhe si usa strcmp. Prova con if(strcmp(a, "ciao")==0) Link al commento Condividi su altri siti Altre opzioni di condivisione...
robilyn Inviato 15 Febbraio 2012 Condividi Inviato 15 Febbraio 2012 Inoltre, per acquisire o stampare una stringa, il primo parametro di scanf e printf deve essere "%s" e non "%c". Link al commento Condividi su altri siti Altre opzioni di condivisione...
BlackJack4051 Inviato 15 Febbraio 2012 Autore Condividi Inviato 15 Febbraio 2012 Grazie a tutti e due!!! Grazie jtagger il mio problema è quello che mi sono dilungato in un argomento che non ho mai trattato. Sto studiando ancora le strutture di controllo. Grazie robilyn per le specifiche di conversione non lo sapevo. Link al commento Condividi su altri siti Altre opzioni di condivisione...
Messaggi raccomandati
Crea un account o accedi per lasciare un commento
Devi essere un membro per lasciare un commento
Crea un account
Iscriviti per un nuovo account nella nostra community. È facile!
Registra un nuovo accountAccedi
Sei già registrato? Accedi qui.
Accedi Ora