INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
int in 2 bytes umwandeln
25.01.2021, 11:15
Beitrag #1
int in 2 bytes umwandeln
Hallo,
ich möchte Daten von einer SD-Karte als int-Werte lesen und als int-Wert schreiben. Als Library benutze ich sdFat. Leider liest read nur Bytes.
Code:
int ergebnis = meinFile.read();     // falsches Ergebnis
byte ergebnis = meinFile.read();   // funktioniert, aber bringt nur 1. Byte

Ich mache es jetzt so:
Code:
byte ergebnis1 = meinFile.read();
byte ergebnis2 = meinFile.read();
int ergebnis = ergebnis1 + ergebnis2 * 256;

Gibt es keine bessere Möglichkeit?
Gruß Karl

Karl Stanger
www.stangerweb.de
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
25.01.2021, 12:24
Beitrag #2
RE: int in 2 bytes umwandeln
Du bist Dir sicher, dass Du int und nicht unsigned int willst?
read() liefert immer nur 1 Byte.
Andere Variante zum Zusammensetzen:
Code:
int ergebnis =  ergebnis2 << 8 || ergebnis1;

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
25.01.2021, 12:55
Beitrag #3
RE: int in 2 bytes umwandeln
Ich habe nur positive Zahlen, die aber (heute noch) kleiner 1000 sind. unsigned int wäre für mich auch gut und würde keine Einschränkung bedeuten.
Dann ist das Ergebnis
Code:
unsigned int ergebnis = ergebnis2 << 8 | ergebnis1;
wegen bitweise ODER.

Karl Stanger
www.stangerweb.de
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
25.01.2021, 13:42
Beitrag #4
RE: int in 2 bytes umwandeln
Richtig, war ein | zuviel.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  n Bytes über UDP empfangen Igom 5 362 21.02.2021 10:30
Letzter Beitrag: Tommy56
  Bits eines Bytes einzeln nacheinander auswerten HolgerM 3 518 02.10.2020 16:47
Letzter Beitrag: Tommy56
  byte in int umwandeln juergen001 15 1.439 15.09.2020 16:48
Letzter Beitrag: MicroBahner
  ASCII code in Dezimalzahl umwandeln acca500 8 1.748 15.05.2020 11:34
Letzter Beitrag: acca500
  Bytes & more Hilgi 18 3.129 28.04.2019 18:11
Letzter Beitrag: Hilgi
  Variable auf zwei Bytes aufteilen ? huber5093 4 2.376 05.03.2019 20:17
Letzter Beitrag: Tommy56
  Multiple Serielle Bytes mit Startmarke synchronisieren, was mache ich falsch Mosi 8 2.613 20.12.2018 18:33
Letzter Beitrag: Mosi
  mehrere Bytes seriell einlesen. Verständnisprobleme Mosi 9 3.066 19.12.2018 16:07
Letzter Beitrag: Mosi
  .ogg Datei in .flac umwandeln BluPxl 2 1.649 28.05.2018 18:54
Letzter Beitrag: amithlon
  Bits und Bytes Blumfeld 19 6.060 10.03.2018 11:12
Letzter Beitrag: fraju

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste