【发布时间】:2021-11-24 13:28:08
【问题描述】:
#include <iostream>
using namespace std;
void reverse(int A[],int N){
for(int i=0;i<N/2;i++){
swap(A[i],A[N-i-1]);
}
for(int i=0;i<N;i++){
cout<<A[i];
}
}
int main() {
//code
int T,N,A[N];
cin>>T>>N;
for(int i=0;i<N;i++){
cin>>A[i];
}
reverse(A,N);
//please help it its getting into my nerves
return 0;
}
请帮我解决这个问题 对于此代码,我收到运行时错误 .Abort signal from abort(3) (SIGABRT)'
【问题讨论】:
-
int T,N,A[N];...A有多少元素,在这里声明? -
总是在启用警告的情况下进行编译,并且不要接受代码,直到它在没有警告的情况下编译。要启用警告,请将
-Wall -Wextra -pedantic添加到您的gcc/clang编译字符串(也可以考虑添加-Wshadow以警告阴影变量)。对于 VS(Windows 上的cl.exe),使用/W3。所有其他编译器将具有类似的选项。阅读并理解每个警告——然后去修复它。警告将识别任何问题,以及它们发生的确切行。通过聆听编译器告诉您的内容,您可以学到很多东西。
标签: c++ runtime-error abort