Ciao a tutti!!
Qualcuno sa dirmi come lavorare con il char *s e
scorrere le stringhe puntate da questo ???
Grazie a tutti ciao
Ciao a tutti!!
Qualcuno sa dirmi come lavorare con il char *s e
scorrere le stringhe puntate da questo ???
Grazie a tutti ciao
Esempio:
Passi una stringa a una funzione.
oppurecodice:int strlen (char *s) { int i; for (i=0; str[i] != '\0'; i++); return(i); }
codice:void strprint (char *s) { while (*s != '\0') { printf("%c", *s); s++; } }
Hybrid Share - Share is Now Easier...
http://hybrid-share.sourceforge.net/
http://directory.fsf.org/hybrid_share.html
http://gnomefiles.org/app.php/Hybrid_Share
Hei, che velocità!!
Posso fare un'altra domanda? Ma se io volessi confrontare gli elementi di una stringa data in parametro come char *s come potrei fare??? (Tipo il primo con l'ultimo... il secondo con il penultimo....ecc)
Grazie ancora!
Puoi farlo esattamente come se fosse un array, questo perchè in C il nome di un array non è altro che un puntatore al primo elemento di essoOriginariamente inviato da Fabiuz
Hei, che velocità!!
Posso fare un'altra domanda? Ma se io volessi confrontare gli elementi di una stringa data in parametro come char *s come potrei fare??? (Tipo il primo con l'ultimo... il secondo con il penultimo....ecc)
Grazie ancora!
ma allora l'ultimo elemento della stringa (che non è '\0') qual'è??
devo trovarlo in qualche modo???
Puoi trovare la lunghezza della stringa con la funzione di libreria strlen (per usarla devi includere string.h)Originariamente inviato da Fabiuz
ma allora l'ultimo elemento della stringa (che non è '\0') qual'è??
devo trovarlo in qualche modo???
Ovviamente, se la stringa è lunga 4, stringa[3] sarà l'ultimo carattere effettivo che vuoi tu
quindi per confrontare gli elementi di una stringa io faccio così :
int a=stlen(s);
for (i=1; i<=a; i++){
if (s[i]==s[a])
i++;
a--;
Giusto? Posso fare così vero?