C++用cin输入一个整数指针数组,最多32个数字,回车表示输入结束
时间: 2023-11-27 18:03:24 浏览: 39
好的,我可以通过下面的代码来实现这个功能:
```c++
#include <iostream>
using namespace std;
int main() {
int *arr = new int[32]; // 动态申请一个长度为32的整型数组
int count = 0; // 记录输入的数字个数
while (cin >> arr[count]) { // 循环读入数字,并判断是否读到了文件结尾
count++; // 统计输入的数字个数
if (count >= 32) { // 如果输入的数字个数达到了32个,则退出循环
break;
}
}
// 输出输入的数字
for (int i = 0; i < count; i++) {
cout << arr[i] << " ";
}
cout << endl;
delete [] arr; // 释放掉申请的内存空间
return 0;
}
```
这段代码会动态申请一个长度为32的整型数组,然后通过循环不断读取输入的数字,并统计输入的数字个数。如果输入的数字个数达到了32个,则退出循环。最后输出输入的数字,并释放掉申请的内存空间。
相关问题
C++用gets_s进行指针数组输入,输入回车即结束输入
`gets_s` 是 C11 标准中新增的安全字符串输入函数,防止缓冲区溢出,但是在 C++11 中已经被废弃,不建议使用。我们可以使用 C++ 中的 `getline` 函数来代替。
以下是使用 `getline` 函数进行指针数组输入的示例代码:
```c++
#include <iostream>
using namespace std;
int main() {
char *str[100]; // 指针数组
int i = 0;
while (getline(cin, str[i])) { // 输入回车即结束输入
i++;
}
// 输出输入的字符串
for (int j = 0; j < i; j++) {
cout << str[j] << endl;
}
return 0;
}
```
示例输入:
```
hello
world
how are you
```
示例输出:
```
hello
world
how are you
```
C++指针方式键盘输入数组,最多2000个数,输入-1为停止输入标志
可以使用指针来输入数组,以下是一个示例代码:
```cpp
#include <iostream>
using namespace std;
int main() {
int arr[2000];
int* ptr = arr; // 指向数组的指针
int num;
cout << "请输入数字,以-1结束输入:" << endl;
while (true) {
cin >> num;
if (num == -1) {
break;
}
*ptr = num; // 将输入的数字赋值给数组
ptr++; // 指针移动到下一个元素
}
// 输出数组内容
cout << "输入的数组为:";
for (int i = 0; i < ptr - arr; i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
在这个示例代码中,我们定义了一个大小为2000的数组`arr`,并将指向数组的指针`ptr`初始化为数组的首地址。然后通过循环输入数字,每次将输入的数字赋值给指针指向的数组元素,并将指针移动到下一个元素。当输入-1时,循环结束。最后,我们通过遍历数组的方式输出数组的内容,其中`ptr - arr`表示数组中实际存储的元素个数。