mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Struktur auf Adresse (Zeiger) schreiben


Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe im AS4 (Automation Studio - B&R Entwicklungssoftware) eine 
eigene Library geschrieben.

Wenn ich diese Library aufrufe übergebe ich die Adresse zu einer 
Struktur bzw. die Anfangsadresse zu dieser Struktur.

Innerhalb der Library habe ich genau dieselbe Struktur (identischer 
aufbau).

Nachdem meine Berechnung in der Library erledigt ist, übergebe ich die 
Daten an die Library-Struktur.

Nun müsste ich diese Struktur auf die Adresse schreiben, die ich beim 
Aufruf übergeben bekommen habe.

Ich weiß leider nicht, weil ich bisher Pointer/Zeiger immer gemieden 
habe. Würde mich wirklich sehr freuen, wenn jemand einen Tipp hätte.

Folgendes habe ich mithilfe des Internets bereits probiert, hat aber 
leider nicht geklappt:

inst->InputStuktur = &inst->LibraryStruktur

Autor: Arduino Fanboy (ufuf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich glaube du suchst memcpy() ....

: Bearbeitet durch User
Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Arduino F. schrieb:
> Ich glaube du suchst memcpy() ....

Danke dir. Ich glaube damit wird es gehen ;D.

Hätte da aber nochwas. Ich verwende in der Struktur verschiedene 
Datentypen. Die Struktur ist relativ dynamisch, sodass sich die Größe 
ändern kann.

Gibt es eine Funktion mit der man die Größe einer Struktur bestimmen 
kann? (da memcpy diese Angabe haben möchte)

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sizeof?

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, das war es. Danke.

Hätte ich selbst drauf kommen müssen. Schließlich nutze ich das SIZEOF 
seit einer Woche fast täglich ;D. Liegt wohl an der Uhrzeit...

Danke euch beiden

Autor: Timo N. (tnn85)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schönes Beispiel wie einem mit 6 Worten in 2 Antworten geholfen wurde.

Autor: Dirk B. (dirkb2)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
structs kann man auch direkt zuweisen.
Auch über Zeiger.

i.A. geht das mit *zeiger = Variable;


Alex schrieb:
> inst->InputStuktur = &inst->LibraryStruktur

Dein Beispiel deutet auf eine struct in einer struct hin, von der im 
Text aber nicht die Rede ist.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.