私はC++を初めて使用しますが、2次元配列に値を設定するだけで混乱しているため、いくつかの概念が欠けていると思います。指定した場所に一度だけ設定するのではなく、複数の場所に設定します。コードは他の言語では完全に理にかなっているので、私が知らないのはC ++のちょっとした癖に違いありませんか?
#include <iostream>
#include <string>
int main()
{
const int width=26;
const int height=10;
char arr[width][height];
//fill with dots
std::string empty=".";
for (int i=0;i<height;i++)
{
for (int j=0;j<width;j++)
{
arr[i][j]=empty[0];
}
}
std::string msg="test";
//set location row=5, col=3 to "t"
arr[5][3]=msg[0];
//print the array
for (int i=0;i<height;i++)
{
for (int j=0;j<width;j++)
{
std::cout<<arr[i][j];
}
std::cout<<std::endl;
}
}
結果は次のとおりです。
..........................
..........................
..........................
.......................t..
............t.............
...t......................
..........................
..........................
..........................
..........................
真ん中には1トンしかありません。なぜ他の2トンを入れているのかわかりません。