#include <iostream>
using namespace std;
int recur(int x) {
1 and recur(--x);
cout << x;
return x;
}
int main() {
recur(10);
return 0;
}
最佳答案
1 and recur(--x);
相当于
recur(--x);
显然,您正在进行无限递归调用,这将导致堆栈溢出,然后导致分段错误。
我想你是说
x and recur(--x);
仅当x为非零时才进行递归调用。