如何使用键盘输入整数数组和字符串数组的数组大小?我输入的值将应用于两个数组。我将使用两个for循环来使用字符串和整数填充两个数组。我到现在为止尝试的一切都失败了。知道我怎么能这样做吗?
答案 0 :(得分:0)
你可以为动态数组做到这一点:
unsigned int size;
std::cout << "size: ";
std::cin >> size;
int* pInt = new int[size];
std::string* pstr = new std::string[size];
// Use loops to read / write
最后你应该释放记忆:
delete[] pInt;
delete[] pstr;
请记住,数组在编译时容器是固定大小的。有些编译器允许VLA
。
我建议使用std::vector
:
std::vector<int> vi;
vstd::vecotr<std::string> vstr;
unsigned int size;
std::cout << "size: ";
std::cin >> size;
vi.resize(size);
vstr.resize(size);
std::string str;
int x;
for(auto i(0); i != size; ++i){
std::getline(std::cin, str);
vstr.push_back(str);
std::cin >> x;
vi.push_back(x);
}