C++ 中止陷阱:6个错误 #包括 #定义ll long long int 使用名称空间std; int main() { LLT; cin>>t; ll res[t]; 对于(ll k=0;k>n; 对于(ll i=0;i

C++ 中止陷阱:6个错误 #包括 #定义ll long long int 使用名称空间std; int main() { LLT; cin>>t; ll res[t]; 对于(ll k=0;k>n; 对于(ll i=0;i,c++,C++,数组arr[4]将超出范围。因此-删除垃圾,我们得到-“此程序在运行时崩溃”什么平台?你在调试器下运行吗?程序在某些情况下给出正确答案,但打印结果后中止。这是无效的C++。C++没有动态长度数组。这是经典的“在线判断”。代码和问题。#define宏的奇怪用法,没有输入案例,使用非标准可变长度数组,问题是寻找破坏代码的测试案例。如果你需要使用宏作为缩写,我强烈建议你参加键盘或打字课程。 #include <iostream> #define ll long long int us

数组arr[4]将超出范围。

因此-删除垃圾,我们得到-“此程序在运行时崩溃”什么平台?你在调试器下运行吗?程序在某些情况下给出正确答案,但打印结果后中止。这是无效的C++。C++没有动态长度数组。这是经典的“在线判断”。代码和问题。
#define
宏的奇怪用法,没有输入案例,使用非标准可变长度数组,问题是寻找破坏代码的测试案例。如果你需要使用宏作为缩写,我强烈建议你参加键盘或打字课程。
 #include <iostream>
 #define ll long long int
 using namespace std;

 int main()
 {
      ll t;
      cin >> t;
      ll res[t];
      for(ll k = 0; k < t; k++)
      {
           ll n, cnt = 0;
           ll arr[4] = {0};
           cin >> n;
           for(ll i = 0; i < (1<<n); i++)
           {
                ll x = 0;
                ll chk = 0;
                for(ll j = 0; j < n; j++)
                {
                     if(i & (1<<j))
                     {
                          chk++;
                          arr[x] = j+1;
                          x++;
                     }
                }
                if(chk == 2)
                {
                     if((arr[0] ^ arr[1]) <= n)
                          cnt++;
                }
           }
           res[k] = cnt;
           // cout << cnt << "\n";
      }
      for(ll i = 0; i < t; i++)
           cout << res[i] << "\n";
      return 0;
 }