Ciao a tutti,mi sto esercitando un po con le funzioni in c++ ma ho un problema.
Ho inserito all'interno di una funzione un'altra fatta da me.per farvi capire ecco cosa ho fatto
codice:int lenstr(const str s){ int i; while(s[i]!='\0') i++; return i; } int charcomuni(const str s1,const str s2){ int l1,l2,lung=0,i; l1=lenstr(s1); l2=lenstr(s2); if(l1>l2){ for(int i=0;i<l2;i++){ for(int j=0;j<l1;j++){ if(s1[j]==s2[i]) lung++; } } } else{ for(int i=0;i<l1;i++){ for(int j=0;j<l2;j++){ if(s1[i]==s2[j]) lung++; } } } return lung; }
tralasciando il fatto che esiste strlen(ne ho fatta una io per esercitarmi) e tralasciando che l'algoritmo della seconda funzione non fa proprio quello che volevo io ho un problema non di compilazione ma di esecuzione del file.
Quando nel dos arriva il momento di eseguire la seconda funzione mi da l'errore "ha smesso di funzionare" e si chiude.Sono sicuro che il problema è la chiamata della funzione perchè se nella seconda funzione invece della funzione fatta da me lenstr metto strlen funziona perfettamente.
Quindi mi chiedo,non posso chiamare delle funzioni all'interno di altre?? se si perchè mi da questo problema?