www.mikrocontroller.net

Forum: PC-Programmierung Union - Bitfelder - Frage


Autor: Vitali Berner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo liebe Leute!

Ich habe von einem Lehrer meiner Schule ein Aufgabenheft rund um C/C++ 
bekommen, welchen ich bis dato gut beantworten konnte.
Allerdings stoße ich beim Kapitel "Unions und Bitfelder" auf einen für 
mich etwas schwerverständlichen Punkt der Programmiersprache.

Vielleicht könnt ihr mir weiterhelfen.

Die Aufgabe lautet wie folgt:

Ein int-Wert und ein Bitfeld soll zum Teil einer Union gemacht werden.
Eine Eingabe des Benutzers wird erwartet, der eingegebene Wert soll in 
der int-Variablen gespeichert werden. Anschließend soll der eingegebene 
Wert (Hexadezimalzahl) in Bitfelder - welches jeweils aus einem Bit 
besteht - geschrieben werden.
Der eingegebene int-Wert soll anschließend binär am Bildschirm 
erscheinen.


Bisher weiß ich nicht weiter. Habe nur den ersten Satz der 
Aufgabenstellung (hoffentlich) halbwegs richtig gelöst:
  union ui
  {
    int iWert;
    struct bitfeld
    {
      unsigned int bit[32]: 1;
    }
  }



Könnt ihr mir weiterhelfen?

Vielen Dank!

Autor: Frank Link (franklink)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schaust Du z.B. mal hier:

http://www.it-academy.cc/article/1345/Binaere+Dars...

Gruß
Frank

Autor: ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
union sind eigentlich nicht dafür gedacht, um zwischen verschiedenen 
Datentypen umzuwandeln. Um auf die einzelnen Bits zuzugreifen gibts auch 
extra die Bit Operationen:

http://home.fhtw-berlin.de/~junghans/cref/CONCEPT/...

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.