Maly1990 utworzono 17 lutego 2010 utworzono 17 lutego 2010 [code] char imie[20]; cout<<"Podaj imie\n"; cin>>imie; //wpisuje np. Marcin. ofstream zapisz("dane.txt"); zapisz<<imie; zapisz.close(); return 0; [/code] Wszystko mi zapisuje. Imię i jeszcze jakieś krzaczki. Jak napisać program żeby nie zapisywał do pliku żadnych niepotrzebnych rzeczy?
Quentin1 komentarz 26 lutego 2010 komentarz 26 lutego 2010 Musisz dodać po ciągu znaków, który wprowadził użytkownik znak [i]null[/i] - czyli [b]'\0'[/b]. Operator << tak długo wypisuje znaki (na ekran czy - tak jak tutaj - pliku dyskowego) aż napotka znak [b]'\0'[/b]. Dużo lepszym rozwiązaniem było by użycie tutaj klasy [i]string[/i] - przy obiektach takiego typu, nie trzeba robić żadnych takich sztuczek z [i]null[/i]'em.
Maly1990 komentarz 10 marca 2010 Autor komentarz 10 marca 2010 Ja napisałem program tak: [code] #include <iostream> #include <cstdio> #include <fstream> using namespace std; int main() { char a[20]; ofstream za("t.txt"); cout<<"Imie\n"; cin>>a; za<<a; za.close(); getchar(); return 0; } [/code] I działa. Nie dopisuje niepotrzebnych krzaczków.
Wciąż szukasz rozwiązania problemu? Napisz teraz na forum!
Możesz zadać pytanie bez konieczności rejestracji - wystarczy, że wypełnisz formularz.