#include <iostream>
#include <string>
using namespace std;
/*
[0][0]|[0][1]|[0][2]|[0][3]|[0][4]
------|------|------|------|------
[1][0]|[1][1]|[1][2]|[1][3]|[1][4]
------|------|------|------|------
[2][0]|[2][1]|[2][2]|[2][3]|[2][4]
------|------|------|------|------
[3][0]|[3][1]|[3][2]|[3][3]|[3][4]
------|------|------|------|------
[4][0]|[4][1]|[4][2]|[4][3]|[4][4]
*/
int main()
{
string pole[5][5];
for (int i=0;i<5;i++)
{
for(int j=0;j<5;j++)
{
pole[i][j]="0";
cout<<pole[i][j];
}
cout<<endl;
}
return 0;
}
Deklarujesz tablice dwuwymiarową string po 5 elementów, a w pętli for inkrementujesz zmienną zaczynając od 0 a kończąc na zmienna = 5. Pięć elementów przy zadeklarowanej tablicy czyli zajmują indeksy w 0,1,2,3,4. Ty pytasz o 5 indeks dla i oraz j, którego nie ma. Więc błąd powoduje takie problemy dlatego, że <= znaczy większe lub równe pięć.
string pole[5] - [0][1][2][3][4]
for int i = 0; i <= 5; i++
sprawdzi:
pole[0] - i to 0
pole[1]- i to 1
pole[2]- i to 2
pole[3]- i to 3
pole[4]- i to 4
pole[5] // ktorego nie ma - bo i = 5 dlatego, że i <= 5