Я хочу поместить строку в матрицу char nxn, которая превращает строку "abcdefghi"
в матрицу 3x3
char и становится {abc; def; ghi}, но не сохраняет права.
Я пытаюсь вывести каждые i
, j
, ch[i][j]
и s[j+i*3]
в первом цикле, и они выглядят правильно, но в конечном выводе все идет не так.
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int main()
{
char ch[2][2];
string s = "abcdefghi";
int i, j;
for (i = 0; i < 3; i++)
{
for(j = 0; j < 3; j++)
{
ch[i][j] = s[j + i * 3];
}
}
for (i = 0; i < 3; i++)
{
cout << ch[i] << endl;
}
return 0;
}
Я хочу, чтобы матрица ch стала {abc; def; ghi}, но на выходе получилось {abdegi; degi; gi}