Forum: Mikrocontroller und Digitale Elektronik Array zur Laufzeit neubeschreiben


von Sascha (Gast)


Lesenswert?

1
uint8_t data[4];
2
data[] = {0x00, /* .... */ 0xff};

Wie kann man sowas schreiben?

von Codix (Gast)


Lesenswert?

Thread Titel passt nicht zu der mickrigen Info die Du hier schreibst.
Was willst Du genau?
Meine Glaskugel ist gerade in der Werkstatt.

von klausr (Gast)


Lesenswert?

Am einfachsten halt so:

data[0] = 0x00;
data[1] = 0x01;
data[2] = 0x20;
data[3] = 0xff;

von $NAME (Gast)


Lesenswert?

Sascha schrieb:
> uint8_t data[4];
> data[] = {0x00, /* .... */ 0xff};
>
> Wie kann man sowas schreiben?

Nicht möglich. Es geht nur:
1
data[0U] = 0x00U
2
data[1U] = 0x01U
3
...

von Tom (Gast)


Lesenswert?

In nacktem C nicht. Seit C++11 geht es, falls man das nutzen kann und 
will.
1
    std::array<uint8_t, 4>  data;
2
    data = {1,2,3,4};
3
    // ....
4
    data = {5,6,7,8};

von Stefan F. (Gast)


Lesenswert?

Oh cool. So nach und nach lerne ich unfreiwillig die Vorzüge von C++ 11. 
Kann der avr-gcc das?

von W.G. (Gast)


Lesenswert?

Stefan U. schrieb:
> Oh cool. So nach und nach lerne ich unfreiwillig die Vorzüge von C++ 11.
> Kann der avr-gcc das?

Nein

von Peter D. (peda)


Lesenswert?

Stefan U. schrieb:
> Kann der avr-gcc das?

Der GCC kann memcpy().

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.