[C] Wyszukiwanie frazy w tekście - funkcja
Ostatnio zmodyfikowano 2011-12-15 23:49
buku Temat założony przez niniejszego użytkownika |
[C] Wyszukiwanie frazy w tekście - funkcja » 2011-12-15 23:10:58 int znajdz( char tab[], char wyraz[] ) { int i, j, ile = 0; for( i = 0; tab[ i ]; i++ ) { if( tab[ i ] == wyraz[ 0 ] ) { int h = i + 1; for( j = 1; wyraz[ j ]; j++ ) { if( wyraz[ j ] == '\0' ) return( i + 1 ); if( wyraz[ j ] != tab[ h ] ) break; h++; printf( "Moje h to %d\n", h ); } } printf( "Ile razy %d\n", ile ); ile++; } }
Witam oto wyżej zaprezentowana funkcja, z niewiadomych mi powodów nie działa. Wiem że pewnie wynika to z mojej głupoty wiec prosiłbym chociaż o nr linii w których coś się nie zgadza. Dodam że funkcja ta ma zwracać nr pozycji w którym zaczyna się szukany wyraz. |
|
DejaVu |
» 2011-12-15 23:17:23 strstr
/edit:
Reasumując:
#include <cstdio> #include <cstring>
int main() { char str1[] = "1410 : bitwa pod Grunwaldem."; char str2[] = "bitwa "; char * wynik = strstr( str1, str2 ); printf( "Znaleziono na pozycji: %d\n", wynik ? wynik - str1:- 1 ); return 0; } |
|
buku Temat założony przez niniejszego użytkownika |
re » 2011-12-15 23:49:55 Wiem, że taka funkcja istnieje. Lecz interesuje mnie w czym popełniłem błąd, żeby się czegoś nauczyć na przyszłość. Chyba że do dupy cały zarys tego algorytmu jest to napiszcie;p
edit. juz znalazlem blad sry za te glupoty wyzej. |
|
« 1 » |