Strstr

di il
9 risposte

Strstr

#include <stdio.h>
#include <string.h>

int main(){
    char s[30];
    char s1[30];
   
    
    printf("inserisci prima stringa");
    getchar();
    fgets(s,30,stdin);
    strtok(s,"\n");
        printf("inserisci seconda stringa");
        getchar();
    fgets(s1,30,stdin);
     strtok(s1,"\n");
   if(strstr(s,s1)){
       printf("la seconda stringa è contenuta nella prima stringa");
       
       
       
   }else{
       printf("la seconda stringa non è contenuta nella prima stringa");
       
   }
    
    
}
ciao ragazzi ho creato questo programma che mi dice se la seconda stringa è contenuta nella prima ,io vorrei che mi dicesse pure quante volte è contenuta..avevo inizializzato un contatore ma giustamente me lo conta una volta ...come potrei fare?

9 Risposte

  • Re: Strstr

    Semplificando, devi ottenere in un puntatore il risultato della strstr.
    Se il puntatore è null, termini presentando il risultato del contatore.
    Se il puntatore non è null, aumenti il contatore, sposti il puntatore al prossimo carattere e se il carattere non è \0 ripeti la strstr; altrimenti termini e mostri il contatore.
  • Re: Strstr

    Graziee
  • Re: Strstr

    Ma se volessi farlo senza puntatori? perchè è l unica cosa che non so trattare bene
  • Re: Strstr

    Basta che non ti appoggi alla funzione strstr, ma fai tu la ricerca con dei cicli !!!
  • Re: Strstr

    Non è possibile programmare in C in maniera corretta senza conoscere i puntatori ... forza ...
  • Re: Strstr

    Ora ci riprovo
  • Re: Strstr

    Scusa, ma che strano corso segui che tratta la strstr ma non ha ancora affrontato i puntatori??
  • Re: Strstr

    Li ho affrontati i puntatori solo che io rielaboravo tutto per evitare di usarli comunque ho passato l'esame e volevo ringraziare tutti quelli che mi hanno risposto e specialmente te che mi hai dato molte dritte !!grazie!
  • Re: Strstr

    Di nulla ... Ma spero per te che non ci sia un altro esame più avanzato da fare...
Devi accedere o registrarti per scrivere nel forum
9 risposte