Problem z zapisem do <<plik

0
#include<fstream>
#include<iostream>
using namespace std;

int main(){
    fstream plik;
    short load[3],i;
    plik.open("c:\\test.txt",ios::in);
           for(i=0; i<3;i++)
                 plik>>load[i];
    plik.close();
    
    plik.open("c:\\test.txt",ios::out);
           for (i=0; i<3; i++)
                 plik<<load[i]<<" "<<load[i]*load[i]<<" ";  
    plik.close();
    
    return 0;
}; 

Problem w tym, że kiedy odczytam 4 wartości zapisane w pliku test i chcę zapisać wartość, i kwadrat tej wartości do pliku to w rezultacie otrzymuje wyczyszczony plik.

0

Nie rozumiem co masz na myśli. Program wykonuje się poprawnie, pobiera z pliku wartości i później zapisuje je wraz z ich kwadratami. W czym dokładnie jest problem?

0

Może problem w tym że autor postu myśli że odczytuje i zapisuje 8 liczb kiedy program odczytuje i zapisuje 3 liczby.

0

Mi działa jak jak powinno, odczytuje/zapisuje.

Jak chcesz odczytać 4 liczby to zmień rozmiar tablicy na 4 i pętlę zwiększ do 4. Zrób sobie zmienną, która będzie trzymać ilość liczb wczytywanych/zapisywanych i wstaw ją tam gdzie masz liczby.

1 użytkowników online, w tym zalogowanych: 0, gości: 1