Was sagt mir diese Warnung

Gast #1115006
Lesenswert?

Hi,

hier habe ich einen Code-Schnipsel
1
#include <avr/pgmspace.h>
2

3
typedef struct {
4
  const char s[2][20];
5
  const int i;
6
} TT;  
7

8
const TT aa[] PROGMEM = {
9
  'a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a','a',
10
  'b','b','b','b','b','b','b','b','b','b','b','b','b','b','b','b','b','b','b','b',
11
  2356
12
};

bei dem ich immer folgende Warnungen bekomme:

../main.c:261: warning: missing braces around initializer
../main.c:261: warning: (near initialization for 'aa[0]')

Weiß jemand Rat?
Gast #1115017
Lesenswert?

benny wrote:
> Hi,
>
> hier habe ich einen Code-Schnipsel
> [...]
> bei dem ich immer folgende Warnungen bekomme:
>
> ../main.c:261: warning: missing braces around initializer
> ../main.c:261: warning: (near initialization for 'aa[0]')
Und völlig zu Recht.
1
#include <avr/pgmspace.h>
2

3
typedef struct {
4
  const char s[2][20];
5
  const int i;
6
} TT;
7

8
const TT aa[] PROGMEM = {
9
  {
10
    {
11
      {
12
        'a','a','a','a','a',
13
        'a','a','a','a','a',
14
        'a','a','a','a','a',
15
        'a','a','a','a','a'
16
      },
17
      {
18
        'b','b','b','b','b',
19
        'b','b','b','b','b',
20
        'b','b','b','b','b',
21
        'b','b','b','b','b'
22
      }
23
    },
24
    2356
25
  }
26
};
Gast #1115020
Lesenswert?

A. K. wrote:
> Deine Deklaration hat 3 Hierarchieebenen:
> - struct
> - array[2]
> - array[20]
> und folglich sollte das sinngemäss so aussehen:
> = {{{'a'..'a'},{'b'..'b}},2356};
Vorsicht, das ganze Ding ist nochmal ein Vektor :-)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren