![](/img/trans.png)
[英]How to accept space separated integers and store them in a vector in C++?
[英]C++ Input space separated integers and store inside an int array
我正在尝试输入 int 数组大小,然后得到 N 个空格分隔的整数,如下所示:
int main()
{
int N;
cin>>N;
int *arr = new int(N);
for(int i=0; i<N; i++) {
cin>>arr[i];
}
for(int i=0; i<N; i++) {
cout<<arr[i]<<endl;
}
if (isSpiralSorted(arr, N))
cout << "yes" << endl;
else
cout << "no" << endl;
return 0;
}
但输入:
10
1 2 3 4 5 6 7 8 9 10
实际上需要:
2 3 4 5 6 7 8 9 10
有人可以在这里帮助我了解我做错了什么吗?
您正在使用new int(N)
而不是数组创建单个标量。 如果将其更改为new int[N]
那么它运行良好。
你最后也忘了删除数组。
#include <iostream>
int main()
{
int N;
std::cin >> N;
int *arr = new int[N];
for(int i=0; i<N; i++) {
std::cin>>arr[i];
}
for(int i=0; i<N; i++) {
std::cout << arr[i] << std::endl;
}
delete[] arr;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.