2016-11-17 8 views
-2

IAR EWBによるプログラミング。私は配列をリセットしようとしたときにエラーが発生しました[20]。タスクは、イベントに基づいてデータを記録することでした。イベントが発生すると、20バイトのうち6バイトが記録されました。イベントが発生した次の時間に、その20バイトの次の6バイト、次に6バイトを記録しました。残りの2バイトは無視されます。IAR式の式が有効になりました

グローバル配列[20]と宣言しました。イベントが3回発生すると、配列[20]をリセットしたかったのです。これを行う1つの方法はarray [20] = {0}です。しかし、私がそれをしたとき、私は表現が間違っていると言いました。ここにはNo Macrosが含まれています。

私はforループを使い、配列0の各要素を作ってみました。なぜか分からない。何かご意見は?

+1

[ask]を読み、[mcve]を入力してください。 – Olaf

答えて

0

あなたが記述している構文:

typename array[20] = {0} 

array[20]が配列ではなく、特定の要素への参照の宣言で初期化子で使用することができます。

ステートメントでこの構文を使用しようとしています。

array[20] = {0} 

あなたはそれのための適切な値ではありません{0}へ(配列の終わりを過ぎている)単一の要素array[20]を、設定しようとしているかのように読み取ります。

ループを使用します。

+0

説明をありがとう。つまり、forループを使用して配列[20]を0にリセットする必要があります。私はあなたの答えをupvoteするのに十分な評判を持っていません。再度、感謝します –

関連する問題