c++解决未知数据个数存入数组(不使用指针)
时间: 2024-04-12 18:30:18 浏览: 21
如果您不想使用指针,可以考虑使用动态数组(Dynamic Array)的方式来解决未知数据个数存入数组的问题。
在C++中,可以使用`std::vector`来实现动态数组。`std::vector`是一个标准库容器,可以自动调整大小以适应需要。
以下是一个示例代码:
```cpp
#include <iostream>
#include <vector>
int main() {
std::vector<int> arr; // 声明一个动态数组
int num;
std::cout << "请输入数据,以-1结束:" << std::endl;
while (true) {
std::cin >> num;
if (num == -1) {
break; // 输入-1时结束循环
}
arr.push_back(num); // 将新数据添加到动态数组的末尾
}
std::cout << "输入的数据为:" << std::endl;
// 打印动态数组中的数据
for (int i = 0; i < arr.size(); i++) {
std::cout << arr[i] << " ";
}
return 0;
}
```
在这个示例代码中,我们使用`std::vector<int>`来声明了一个动态数组 `arr`。然后,我们通过循环读取用户输入的数据,直到输入-1为止。在每次循环中,我们使用`push_back`函数将新的数据添加到动态数组的末尾。循环结束后,我们打印出存储在数组中的数据。
`std::vector`会自动调整大小以适应需要,因此您不需要手动管理内存。这样可以更方便地处理未知数据个数的情况。
希望这个解决方案对您有帮助!如果您有任何疑问,请随时提问。