尝试抓住" for"在c ++中循环

时间:2016-08-31 15:15:22

标签: c++

我要读取10个号码。我的任务是生成例外,数字是负数或偶数。下面是我写的代码,但它不起作用。

 #include <iostream>     
 using namespace std;

 int main()
   { 
     int a[10];
     for(int i=0;i<10;i++)
        { 
         cin>>a[i];
        }
     for(int i=0;i<10;i++)
        {
          try{
              if(a[i]<0 && a%2==0)
                   throw a[i]; 
             }
          catch(int a)
             {
             cout<<"You ve entered a -ve number or a even number";
             }
   }
    return 0;
    } 

这是显示的错误:

In function 'int main()': 16:24: error: invalid operands of types     'int [10]' and 'int' to binary 'operator%' 

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

错字在这里。您不能对阵列进行模运算。 while(m_wr_queue.size()==0) @(posedge m_vif.AXI_ACLK); 应为a%2==0。同时将a[i]%2==0更改为&&,因为您要查找“负数||偶数”。

答案 1 :(得分:0)

两件事:

  1. 您使用整数a对数组2进行模数化。您应取消引用它以获取值:a[i] % 2 == 0
  2. 你做一个布尔AND,你想要一个布尔OR(根据你的问题):||而不是&&