Muszę napisać warunek na to, że znak jest literą i że nie jest końcem wiersza. To będzie coś takiego:
while((zn>=a&&zn<=Z)&&zn!='\n') ?
Muszę napisać warunek na to, że znak jest literą i że nie jest końcem wiersza. To będzie coś takiego:
while((zn>=a&&zn<=Z)&&zn!='\n') ?
while((zn >= 'a' && zn <= 'z') || (zn >= 'A' && zn <= 'Z'))
Dzięki;D
A ten drugi że nie jest końcem wiersza to:
while(((zn >= 'a' && zn <= 'z') || (zn >= 'A' && zn <= 'Z'))&&zn!='\n')
można usunąć niektóre nawiasy:
while((zn >= 'a' && zn <= 'z' || zn >= 'A' && zn <= 'Z') && zn!='\n')
||
to odpowiednik dodawania, a &&
mnożenia — dlatego kolejności tych działań można być pewnym.
Thanks dude;P
Tyle, że ten ostatni warunek nie ma sensu. Skoro już jest literą, to nigdy nie będzie znakiem końca wiersza.
No już doszedłem do tego i mam to w oddzielnej pętli. Mam jednak kolejne pytanie mianowicie, czy deklarujac jakas zmienna plikowa np.
ofstream plik_wy;
plik_wy. open (dane.txt);
plik_wy << ... ;
...
plik_wy. close ();
Czy po zamknięciu plik_wy dalej mogę coś otworzyc korzystajac z niej np:
plik_wy. open(jakies_inne_dane.txt)
czy konieczne jest zadeklarowanie nowej zmiennej plikowej np.
ofstream plik_wy2;
?
Gdyby było konieczne użycie innego obiektu, to jaki byłby sens tworzenia oddzielnej metody do otwierania pliku?
Ogólnie do sprawdzania czy znak jest literą to lepszy jest isalpha() z ctype.h (cctype w c++). Jest to rozwiązanie czytelniejsze, działa z EBCDIC oraz pewnie będzie szybsze (4 skoki warunkowe vs jedno sprawdzenie w tablicy).