Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C++CLI / VB .Net / .Net-Framework » InvalidCastException

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
15.02.2007, 16:36 Uhr
niels_ole_salscheider



Hallo,

ich versuche, mit folgendem Code einen Int16-Datentyp aus zwei (per RS232) empfangenen Bytes zusammenzusetzen:


Code:

Int16 meassured_time = (short) ((((byte) meassured_times_1[2*i]) << 8) | ((byte) meassured_times_1[2*i + 1]));



Allerdings liefert mir das bei Zahlen wie z. B. 10000000 00000000 (binär) eine InvalidCastException.

Woran liegt das und was muss ich ändern, damit es funktioniert?

Danke im Voraus.

Viele Grüße

Ole
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
19.02.2007, 12:53 Uhr
Th



"byte" ist ohne Vorzeichen, du mußt "sbyte" (signed byte) verwenden.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C++CLI / VB .Net / .Net-Framework ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: