Struct-Array

OP Persönliche Seite #284491
Lesenswert?
• ▲
▼
Heyho.

Ich habe folgendes Struct-Array
1
static volatile struct                                      //Struct
2
für aktuellen Messwert. 
3
{                                                           //Element 2
4
noch nicht genutzt
5

6
    signed int amw;                                        
7
//Arithmetischer Mittelwert
8
    signed int min;                                        
9
//Minimalwert
10
    signed int max;                                        
11
//Maximalwert
12
    
13
    signed long amwbuf;                                     //Puffer
14
für Arithmetischer Mittelwert
15
    signed int minbuf;                                      //Puffer
16
für Minimalwert
17
    signed int maxbuf;                                      //Puffer
18
für Maximalwert
19
    
20
    unsigned char amwcnt;                                   //Zähler
21
für Arithmetischen Mittelwert
22
    
23
    unsigned char decimal;                                 
24
//Kommaposition. 0 = y,xxx | 1 = yy,xx |  2 = yyy,x | 3 = yyyy
25
    unsigned char dim;                                      //Einheit
26
des Messwertes
27

28
} messwert[2] = 
29

30
{
31

32
    0,
33
    0,
34
    0,
35
    0,
36
    0b0111111111111111,
37
    0b1000000000000000,
38
    0,
39
    0,
40
    'V',
41
                
42
    0,
43
    0,
44
    0,
45
    0,
46
    0b0111111111111111,
47
    0b1000000000000000,
48
    0,
49
    0,
50
    'V'
51
    
52
};

mitsamt initialisierung. Die Initialisierung habe ich nach meinem C
Buch (für Computer in MSVC) vorgenommen und gedacht, dass sie hier auch
passt. Funktioniert auch ! Aber trotzdem kriege ich immer 2 Warnungen
hierzu:

main.c:35: warning: missing braces around initializer
main.c:35: warning: (near initialization for `messwert[0]')

Die ich ehrlich gesagt nicht zuordnen kann. Wo genau fehlen jetzt
Braces (Klammern) ? und was heißt "Near Initialization" ?

Danke
Gast #284492
Lesenswert?
• ▲
▼
Üblicherweise werden bei der Initialisierung entsprechend der
Verschachtelung der Datenstrukturen Klammern gesetzt.

Einfacheres Beispiel. Korrekt ist:

struct {
   int number;
   char *text;
} xlat[] = {
   { 1, "Eins" },
   { 2, "Zwei" },
   { 3, "Drei" }
};

anstatt wie bei dir:

} xlat[] = {
   1, "Eins",
   2, "Zwei",
   3, "Drei"
};


Die andere Meldung zeigt die Stelle, an der es dem Compiler aufgefallen
ist.

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