No więc tak, zrobiłem intuicyjnie tak jak napisałeś tylko ,Przy wypistwaniu ostatecznej tabeli wypisuje kilka znaków i wywala program. Moze jest to problem spowodowany tym ze nie zwalniam pamięci ale powiem bardzo lamersko ze nie wiem gdzie wsadzić to delete[]; i w jakiej formie tzn samo delete?? Dieki ci za wszelką pomoc. Pozdro.
Kod:
#include <fstream>
#include <iostream>
#include <string>
#include <complex>
#include <vector>
using namespace std;
int main ()
{
string nazwa_pliku ;
cout << " Nazwa pliku powinna byc bez rozszerznia" ;
cout << "i w tym samym katalogu" << endl;
cout << " Nazwa pliku: ";
cin >> nazwa_pliku ;
string s;
ifstream plikWe( nazwa_pliku.c_str(),ios::in );
plikWe>>s;
int n;
n=s.length();
cout << "Ilosc znakow : " ;
cout << n ;
int m;
cout << "podaj zakladana dlugosc klucza"<<endl ;
cin >> m ;
int x=(n/m);
cout<<x<<"ilosc znakow w wierszu"<<endl;
int k=0; //wypisanie zawartosci tablicy
for (int u=0; u<=n; u++)
{
cout << s[u];
}
system ("pause");
char** tabl = new char* [m];
for(int i=0;i<m;++i) {tabl[i] = new char [x];}
for (int j=0;j<x;j++){ // zapisanie tab kolumnami do tabl
for(int i=0;i<m;++i) {
tabl[i][j]= s[k];
++k;
}
}
for (int i=0; i<=x; i++) {
for (int j=0;j<=m;j++){
cout << tabl[i][j];
}
}
system ("pause");
return 0;
}