根据字符串的大小定义数组的大小

时间:2015-02-18 23:11:34

标签: c++ string size

我希望test_2的大小等于用户输入test_1的字符数。

例如,如果用户输入“Hello”,则test_2 [n]变为test_2 [4]。

以下代码不起作用:

std::string test_1;
cin >> text;
int n = text.size();
std::string test_2[n];

给我一​​个错误,“n”必须是一个常数值。有人可以告诉我如何解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

以下是text.size()多个空strings的方法:

std::vector<std::string> test_2 (n);

这是在C ++中获取动态大小数组的首选(唯一真实)方法。请勿使用new[]执行此操作。这是坏的。真的,非常糟糕。