03/07/13 19:04
Bonny
In Linguaggio C per confrontare due stringhe (array di char) si usa la funzione
int strcmp(char *str1, char* str2);
vedi doc: digilander.libero.it/uzappi/C/librerie/funzioni/…
int strcmp(char *str1, char* str2);
vedi doc: digilander.libero.it/uzappi/C/librerie/funzioni/…
aaa
04/07/13 8:06
moloskovic
C non accetta tra le operazioni standard quelle tra librerie. Come ha detto Bonny, la funzione da utilizzare in questo caso è strcmp, che restituisce:
- 0 se le stringhe sono uguali
- int>0 se la prima stringa viene alfabeticamente prima della seconda
- int<0 se la seconda stringa viene alfabeticamente prima della prima
In questo caso, dunque, l'operazione sarebbe qualcosa del tipo
while (strcmp(arr[y],"basta")...
Attento a tre cose: uno quel while all'inizio, se l'array è vuoto, potrebbe darti problemi....perchè non usare do while?
Due: le operazioni di confronto sulle stringhe effettuano un confronto carattere per carattere fino a quando non trovano il carattere di fine stringa 'C non accetta tra le operazioni standard quelle tra librerie. Come ha detto Bonny, la funzione da utilizzare in questo caso è strcmp, che restituisce:
- 0 se le stringhe sono uguali
- int>0 se la prima stringa viene alfabeticamente prima della seconda
- int<0 se la seconda stringa viene alfabeticamente prima della prima
In questo caso, dunque, l'operazione sarebbe qualcosa del tipo
while (strcmp(arr[y],"basta")...
Attento a tre cose: uno quel while all'inizio, se l'array è vuoto, potrebbe darti problemi....perchè non usare do while?
Due: le operazioni di confronto sulle stringhe effettuano un confronto carattere per carattere fino a quando non trovano il carattere di fine stringa '{parsed_message}', che tu non hai inserito.
Tre: se non azzeri x ad ogni inizio ciclo ti arriva a scrivere in Indonesia ', che tu non hai inserito.
Tre: se non azzeri x ad ogni inizio ciclo ti arriva a scrivere in Indonesia
- 0 se le stringhe sono uguali
- int>0 se la prima stringa viene alfabeticamente prima della seconda
- int<0 se la seconda stringa viene alfabeticamente prima della prima
In questo caso, dunque, l'operazione sarebbe qualcosa del tipo
while (strcmp(arr[y],"basta")...
Attento a tre cose: uno quel while all'inizio, se l'array è vuoto, potrebbe darti problemi....perchè non usare do while?
Due: le operazioni di confronto sulle stringhe effettuano un confronto carattere per carattere fino a quando non trovano il carattere di fine stringa 'C non accetta tra le operazioni standard quelle tra librerie. Come ha detto Bonny, la funzione da utilizzare in questo caso è strcmp, che restituisce:
- 0 se le stringhe sono uguali
- int>0 se la prima stringa viene alfabeticamente prima della seconda
- int<0 se la seconda stringa viene alfabeticamente prima della prima
In questo caso, dunque, l'operazione sarebbe qualcosa del tipo
while (strcmp(arr[y],"basta")...
Attento a tre cose: uno quel while all'inizio, se l'array è vuoto, potrebbe darti problemi....perchè non usare do while?
Due: le operazioni di confronto sulle stringhe effettuano un confronto carattere per carattere fino a quando non trovano il carattere di fine stringa '{parsed_message}', che tu non hai inserito.
Tre: se non azzeri x ad ogni inizio ciclo ti arriva a scrivere in Indonesia ', che tu non hai inserito.
Tre: se non azzeri x ad ogni inizio ciclo ti arriva a scrivere in Indonesia
aaa