Witajcie mam bardzo dziwny problem, otóż dostałem błąd przy usuwaniu tablicy dynamicznej i nie widzę żadnego błędu jakiego mógłbym popełnić, bardzo proszę o pomoc w rozwiązaniu problemu
#include <iostream>
#include <fstream>
#include <ctime>
using namespace std;
void create_file(ofstream &File);
int main()
{
srand(static_cast<unsigned int>(time(NULL)));
int n, p, j, i = 0;
cout << "Prosze o podanie liczby, ktora bedzie oznaczac liczebnosc zbioru z ktorej mam wypisac podzbiory\n";
cin >> n;
int *wskwyj = new int[n];
int *temp = wskwyj;
bool *wsk = new bool[n];
bool *wsk1 = wsk;
ofstream File;
create_file(File);
File << '[';
for (int i = 0; i < n; i++)
{
*wskwyj = rand() % n + 1;
File << *wskwyj << ",";
wskwyj++;
}
File.seekp(-1, std::ios_base::end);
File << "] \n";
for (int i = 0; i < n; i++) *wsk++ = 0;
wskwyj = temp;
wsk = wsk1;
do
{
for (int i = 0; i < n; i++)
{
if (wsk[i] == 1)
{
File << wskwyj[i] << " ";
}
}
File << "\n";
i++; p = 0; j = i;
while (j % 2 == 0)
{
j /= 2; p++;
}
if (p <= n) wsk[p] = ((1 - wsk[p]) != 0); //prosty trik ktory likwiduje warning
} while (p < n);
File.close();
delete[] wskwyj;
delete[] wsk;
cout << "Prosze o zajrzenie do pliku, program zostal zakonczony\n";
getchar();
getchar();
getchar();
}
//*********************************************************************************************
void create_file(ofstream &File)
{
cout << "Prosze o podanie nazwy pliku z rozszerzeniem, jaki mam stworzyc do wypisywania wynikow\n";
char tab[20] = { '\0' };
bool type = false;
cin >> tab;
for (int i = 0; i < 20; i++)
{
if (tab[i] == '.') type = true;
}
if (!type)
{
cerr << "Nie podales rozszerzenia, koncze program\n";
getchar();
exit(0);
}
File.open(tab);
if (!File) cerr << "Nie moglem stworzyc pliku\n";
}
Błąd powoduje ta linijka delete []wsk;