Array an Funktion übergeben

Gast #5791463
Lesenswert?

Hallo, ich möchte einen Array an eine Funktion übergeben und dort in 
einer variablen in einem Struct speichern.

die Funktion die die Daten speichern soll ist
1
DATEN daten; // struct
2

3
void setData(uint8_t length, uint8_t* data)
4
{
5
  daten.length = length;
6
  daten.data = ???;
7
}
ist es möglich die Daten irgendwie direkt in daten.data zu speichern? 
Oder muss ich mit einer for-schleife alle werte übertragen?
Gast #5791472
Lesenswert?

> Oder muss ich mit einer for-schleife alle werte übertragen?

Entweder das oder man nimmt memcpy.
1
void setData(uint8_t length, uint8_t* data)
2
{
3
  daten.length = length;
4
  memcpy(daten.data, data, length * sizeof(*data));
5
}

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