0

我的问题是,当将文件中的另一个字符串复制到 char 的二维数组中时出现错误:“表达式:字符串下标超出范围”

它需要帮助,而不是编程太多进步,所以请尽可能简单地解释和解决我的问题,我添加代码。对不起我的英语不好

int ile = 0, rozmiar = 0  ; 
ifstream plik;
string slownik; 
plik.open("C:\\Users\\Mateusz\\Desktop\\Krzyzowka\\slownik.txt"); 
ofstream plik2;
plik2.open("C:\\Users\\Mateusz\\Desktop\\Krzyzowka\\konkretny.txt");
if (plik.good())
{
    cout << "Poprawnie otworzono slownik\n";
    cout << "Ile znakow ma wyraz ?: ";
    cin >> ile; 

    while (plik.good())
    {
        getline(plik, slownik);
        if (slownik.length() == ile)
        {
            plik2 << slownik << endl ;
            rozmiar++;
        }
        //cout << slownik << endl; 
    }
}       
else
    cout << "Nie udalo sie otworzyc slownika\n"; 
plik.close(); 

char **tab = new char*[rozmiar]; 
for (int i = 0; i < rozmiar; i++)
{
    char *nowy = new char[ile]; 
    tab[i] = nowy; 
}
for (int  i = 0; i < rozmiar; i++) 
{
    for (int j = 0; j < ile; j++)
    {
        tab[i][j] = slownik[j];
        cout << tab[i][j];
    }
    cout << endl; 
}
4

0 回答 0