2017-12-09 4 views
-6

私は値を完全に作成したこの配列を持っていますが、基本的に配列に入力されたすべての値が特定の条件であるかどうかを調べるifステートメントを実行します。条件は良いですし、私は必要なすべての値を持っていますが、このifステートメントは配列からの各値ではなく、redsigma配列からすべての値を取っています。どのように配列全体ではなく、ifステートメントに各値を入れますか?比較的新しいC++です。どんな助けもありがとうございます。Ifステートメント - C++

for (int i = 0; i < 7990272; i++) 
{ 
float redsigma[] = { img1->pixels[i].r + img2->pixels[i].r + img3->pixels[i].r + img4->pixels[i].r} 

if (redsigma[0] > lbounds && redsigma[0] < upbounds) 
{ 
        do work blah blah blah 
} 
} 
+2

A +はa、=>ではありません。配列には1つの値があります。ありがとう。 –

答えて

0

あなたは要素を反復するforループを使用する必要があります。

for(int i = 0; i < the length of redsigma; ++i) { 
    if(redsigma[i] meets conditions) { 
    } 
} 

私はあなたの代わりに、配列のstd::vectorを使用することをお勧めします。

+0

ありがとう。代わりにベクトルを使用する理由 – Russsu

+0

@Russsuベクトルは配列よりも高いレベルであり、したがってより安全なメモリです。例えば、境界外の配列にアクセスするとsegfaultが発生し、 'at '関数(ただし、' [] '演算子ではない)を使って境界外のベクトルにアクセスすると、例外が発生します。また、イテレータと各構文的な砂糖を使用することもできます。 –

+0

@Downvoters、私の答えに何が間違っていたのか教えてください。 OPは全体の代わりに配列の各要素をチェックする方法を知りたがったり、質問を誤解しましたか? –