2016-04-06 17 views
-2

私の家事には小さな問題があります。配列を合計するメソッドを作成する必要がありますが、具体的なステップはあります。Cメソッドは警告を出します:式の結果は未使用でフリーズ

int sum_step(int t[], int size, int step) 
{ 
    int i; 
    int sum = 0; 

    for(i=0; i < size; i+step) 
    { 
     sum += t[i]; 
    } 

    return sum; 
} 

とコンソールに警告を返します:

warning: expression result unused 
    [-Wunused-value] 
    i + step; 
    ~^~~~~ 

を誰かが間違っているかを知っている私はこのような何かがしましたか?少し早いですがお礼を!

+0

注:Cは_methods_をサポートしていません

for (i = 0; i < size; i + step) 

はおそらくiは、あなたがこれを書く必要がありますので、各反復の後stepずつ増加することにしたいです。 _functions_のみ。そして、エラーメッセージが示されたコードと一致しません。 See [ask]は[mcve]を提供する。 – Olaf

+0

また、0%のCPU、(ブロックされた)、100%CPU(ループ)の2つの凍結があります。あなたが持っているものを知ることは非常に便利です! –

+0

意味はありませんが、コンパイラが警告を出したときにコードを再確認しましたか?それは明らかな間違いのようなものです。 – mjohnsonengr

答えて

3

次のfor文の3番目の式i+stepは何もしません。

for (i = 0; i < size; i += step) 
+0

メッセージ内のコードは、表示されているコードと同じではありません。セミコロンに注意してください! – Olaf

+0

@Olaf ';'はエラーメッセージの一部かもしれませんが、私はgccに精通していません。 –

+0

ええ、メッセージの出力はやや異なるコードです(最後に 'i + step;'を試しましたが残念ですが、マイケルは '='を見逃しました)。 –

関連する問題