配列とcinを使用したwhileループを使用してユーザーに名前を入力させようとしていますが、最後の人の名前が入力された後、先に進む代わりにプログラムがクラッシュします。これを修正する方法はありますか、それともコードを完全に変更する必要がありますか? 私はC ++にもかなり慣れていないので、できるだけ簡単に答えてもらえますか?
#include <iostream>
#include <string>
using namespace std;
int main()
{
unsigned int numberofplayers;
number://loop back here if more than 4 players
cout << "Number of players: ";
cin >> numberofplayers;
if(numberofplayers > 4 || numberofplayers < 1){
cout << "Invalid number, please enter a number from 1 to 4." << endl;
goto number;
}
string name[numberofplayers];
cout << "Enter your name" << endl;
int a = 1;
while(a < numberofplayers + 1){
cout << "Player " << a << ": ";
cin >> name[a];
cout << "Hello, " << name[a] << "." << endl;
a++;
}
}