Iterator stringu ( porównanie )
Ostatnio zmodyfikowano 2011-05-10 19:58
pekfos |
» 2011-05-10 19:47:08 bo jak warunek pętli sprawdza czy aktualny znak to litera to skończy na pierwszej napotkanej literze. a jak pierwszy sprawdzany znak w stringu nie spełni warunku to pętla się nie wykona. |
|
Mrowqa Temat założony przez niniejszego użytkownika |
» 2011-05-10 19:52:42 Nie rozumiem zbytnio twojego posta ... Ale domyślam się, że zapewne chodzi Ci o to, że jeśli przy || nastąpi raz prawda to dalej nie sprawdza ( tak samo z fałszem przy && ), ale chyba mój warunek dobrze jest skonstruowany ... pyt w poprzednim moim poście :D EDIT: while( !isalpha( * pier ) ) nie działa ... na iteratorach to trochę dziwne jest ... O co chodzi ?? ;/ |
|
pekfos |
» 2011-05-10 19:55:08 nie o to chodzi. przed wejściem do pętli sprawdzany jest warunek podany w while a gdy ten warunek nie jest spełniony to pętla kończy działanie lub jest pomijana. masz źle skonstruowany kod. |
|
Mrowqa Temat założony przez niniejszego użytkownika |
» 2011-05-10 19:56:30 @up Wiem! Bo jest pomijana, gdy by tam był znak, a jeśli nie ma znaku to się powtarza gdy znajdzie się tam znak ...
Wydruk kontrolny --> nie weszło do pętli ... coś jest złe z odniesieniem się do znaku ( operator * ) ... |
|
pekfos |
» 2011-05-10 19:57:37 no właśnie. kod napisz od nowa uwzględniając to. |
|
Mrowqa Temat założony przez niniejszego użytkownika |
» 2011-05-10 19:58:55 @up Wiem! Bo jest pomijana, gdy by tam był znak, a jeśli nie ma znaku to się powtarza gdy znajdzie się tam znak ... |
To był sarkazm ... Właśnie o to mi chodzi, by był tam znak ! EDIT: za dużo tego myślenia i teorii ... masz tu cały ten 'skomplikowany' kod: for( int pierw = 1; true; pierw = 0 ) { if( pierw == 1 ) pier = drug + 1; while( !isalpha( * pier ) ) { if( pier >= tekst_pomocniczy.end() ) { pierw = 2; break; } pier++; } if( pierw == 2 ) break; drug = pier + 1; while( !isalpha( * drug ) ) { if( drug >= tekst_pomocniczy.end() ) { pierw = 2; break; } drug++; } if( pierw == 2 ) break; }
I co tu jest źle ;/ Nie chce wejść do środka pętli ... Sry za czytelność kodu - uwierzcie, u mnie na ekranie w moim kompilatorze i kodzie to najczytelniejszy sposób ( dla mnie :P ) EDIT: Mam ! tak banalny błąd :P ( pierw == 1 ) --> ( pierw != 1 ) . |
|
1 « 2 » |