0

文字列入力から配列を作成しようとしています。

string input;
getline(cin,input);
string inputarray1[100];
istringstream pp(input);
int* inputPosition=0;
while (!pp.eof())
{
    getline( pp, inputarray1[*inputPosition], ' ' );
    inputPosition++;
}
int* a = inputPosition;
string halp[a];

getline を使用して入力を解析し (istringstream と共に)、それを配列に配置していますが、余分な空の場所がない配列を作成するにはどうすればよいですか?

4

2 に答える 2

2

ヘッダーからベクターを使用する<vector>

vector<string> inputArray;
while (getline(pp, input, ' '))
    inputArray.push_back(input);

文字列の数は で取得できinputArray.size()、配列と同じように個々の要素にアクセスできますinputArray[index]

空白で区切られていることに注意してくださいoperator>>。おそらくこれも可能です(何らかの理由でタブを別の方法で扱いたい場合を除く)

while (pp >> input)
    inputArray.push_back(input);
于 2012-05-01T03:23:14.093 に答える
0

あなたの質問については 100% 明確ではありませんが、配列の代わりにハッシュ テーブルを使用したいようです。これにより、あなたが言及した空の配列の場所なしで、ユーザー入力を別のものにマップできます。

于 2012-05-01T03:18:48.777 に答える