Witam,
mam taki problem, ze po wczytaniu pliku do char* albo char[] na koncu pojawiaja sie jakies dziwne zeczy.
Nie mam juz pomyslu co jest nie tak ;/.
#include <iostream>
#include <fstream>
using namespace std;
int main(int argc, _TCHAR* argv[])
{
//Zapisujem cos-----------------------------------------
fstream file("a.bin",ios::binary|ios::out|ios::trunc); //trunc- czysci plik
if(!file.is_open())
{
cout << "Pliku niet";
cin.get();
return 1;
}
file.write((char*)"bbb", 3);
file.close();
//Czytamy cos-------------------------------------------
file.open("a.bin", ios::binary|ios::in);
if(!file.is_open())
{
cout << "Pliku niet";
cin.get();
return 1;
}
char* bbb1 = new char (3);
file.read(bbb1, 3);
cout << bbb1 << endl;
char bbb2[3];
file.seekg (0, ios::beg);
file.read(bbb2, 3);
cout << bbb2 << endl;
bbb1 = new char (3);
file.seekg (0, ios::beg);
file.read((char*)bbb1, 3);
cout << bbb1 << endl;
file.seekg (0, ios::beg);
file.read((char*)bbb2, 3);
cout << bbb2 << endl;
file.close();
cin.get();
return 0;
}
A wyjscie mniej wiecej przypomina cos takiego:
bbbýýÝÝÝ
bbbĚĚĚĚĚĚĚĚĚS9
bbbýýźźźźźźźźźź
bbbĚĚĚĚĚĚĚĚ̸Ť9