• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

c++ wczytywanie z pliku do białego znaku

VPS Starter Arubacloud
0 głosów
2,975 wizyt
pytanie zadane 27 lutego 2017 w C i C++ przez Satpol Początkujący (310 p.)
edycja 27 lutego 2017 przez Satpol
Witam,

Mając wczytany z pliku wiersz liczb np:

21 23 24

W jaki sposób umieścić te trzy liczby w oddzielnych zmiennych typu int? (Liczby są oddzielone spacją)

2. Jak zrobić to aby program działał dla wielu linii tekstu gdzie każda ma inną ilość elementów?

1 odpowiedź

0 głosów
odpowiedź 27 lutego 2017 przez John Doe Obywatel (1,720 p.)

Jeżeli korzystasz z obiektu klasy fstream do odczytu z pliku, to po prostu odczytuj przy pomocy przeciążonego operatora >>, który to wczytuje do białego znaku :)

std::ifstream file("liczby.txt);

int a, b, c;

file >> a >> b >> c;

file.close();

 

komentarz 27 lutego 2017 przez Satpol Początkujący (310 p.)
Dzięki za odpowiedź. Wiem o tym ale chodzi mi o sytuację kiedy mam w pliku więcej niż jeden wiersz i w każdym z nich jest inna ilość elementów.. Nie napisałem tego w pytaniu, przepraszam - już poprawione.
komentarz 27 lutego 2017 przez unknown Nałogowiec (39,560 p.)
Pętla while
komentarz 27 lutego 2017 przez John Doe Obywatel (1,720 p.)

Jeżeli chcesz te wszystkie liczby gdzie przechować, to użyj jakiegoś kontenera, np.

#include <iostream>
#include <fstream>
#include <vector>

int main()
{
   std::ifstream file("liczby.txt");
   
   std::vector<int> vec;
   
   while (file.eof())
   {
       int x;
       file >> x;
       vec.push_back(x);
   }

   file.close();
}

A jeżeli tylko przetworzyć, np. dodać wszystkie elementy, to obejdzie się bez kontenera, bo wystarczy w pętli przetwarzać te liczby, zapisując w tej samej zmiennej x nowe liczby.

Jeżeli nie wiesz, czym jest vector, to możesz zamiast tego stworzyć wielką tablicę lub się dowiedzieć, czym jest vector.

komentarz 27 lutego 2017 przez Satpol Początkujący (310 p.)
Dzięki! Właśnie pisałem to samo z użyciem vector'a za radą unknown.

Podobne pytania

0 głosów
3 odpowiedzi 1,109 wizyt
0 głosów
1 odpowiedź 422 wizyt
0 głosów
2 odpowiedzi 137 wizyt

93,079 zapytań

142,043 odpowiedzi

321,452 komentarzy

62,424 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...