Posizione carattere su stringa

di Anonimizzato21067 il
8 risposte
Ciao volevo capire quale fosse la funzione o se ci fosse un metodo per trovare la posizione di un determinato carattere all'interno della striga. perchè con la funzione strpos, trova solamente la prima posizione del carattere cercato e nessun' altra.

8 Risposte

  • Grazie per la risposta. non ho comunque trovato nulla forse perchè non mi sono spiegato bene. vorrei capire se esiste una funzione o una scrittura per far leggere da una stringa es:"mamma" e far stampare a video le 3 posizioni della lettera 'm'.
  • Ma vuoi "cercare" dentro la stringa un carattere o sai quale carattere devi visualizzare (il terzo, il quarto)?
  • Io chiedo all'utente quale carattere vuole cercare nella stringa vorrei che gli indicasse in quali posizioni si trova
  • Allora ti basta un ciclo for, con un indice che usi per confrontare ogni carattere della stringa ...
  • Capito. io ho trovato nei miei vecchi appunti dell'università questo costrutto, ma funziona solo con la ricera della prima posizione.
    int posizione(char *parole, char *search){
        //dichiarazioni
        int i,j,n,l;
    
        //inizializzazioni
        l = strlen(search);
        n = strlen(parole)-l+1;
    
        //calcoli
        for(i=0;i<n;i++){
            for(j=0;j<l&&search[j]==parole[i+j];j++);
                    if(j==l)
    
                  return i;
        }
        return -1;
    }
  • Se cerchi caratteri nella stringa ti basta un solo for, non due.

    Ad esempio se cerchi una 'm' passandola come

    char search

    devi confrontare nella for

    if(word == search) ... (allora visualizza i)
  • Grazie mille, poi provo!
Devi accedere o registrarti per scrivere nel forum
8 risposte