unsinged shortwert als char[2] speichern (VB)??
-
Hallo leute,
ich speichere bzw. mappe die 2bytes eine unsigned short in ein char array:
unsigned short iValue= 52344; unsigned short iResult; char acWORD[3]; acWORD[0]= ((char*)&iValue)[0]; acWORD[1]= ((char*)&iValue)[1]; ((char*)&iResult)[0]= acWORD[0]; ((char*)&iResult)[1]= acWORD[1];
in c++ kein problem, aber wie mache ich genau das in Visual Basic??
grüße
-
Ich wuerde das mit Bitoperatoren machen. Die gibt es sicher auch in Visual Basic.
Das haette ausserdem den Vorteil, dass du dich nicht auf eine Architektur einschraenkst, sondern seine Programme portabler sind. Ok, letzteres ist bei C++ wahrscheinlich wichtiger als bei VB.
-
ruf die winapi-funktionen 'htonl' oder 'htons' auf.
-
vb-freak schrieb:
ruf die winapi-funktionen 'htonl' oder 'htons' auf.
Ist garantiert langsamer, als wenn Du die Werte per Hand (also mit Bitoperationen) umrechnest.
@Boris: Wenn Du diesen Code als C++ bezeichnest, dann hat das Forum versagt.
-
Konrad Rudolph schrieb:
vb-freak schrieb:
ruf die winapi-funktionen 'htonl' oder 'htons' auf.
Ist garantiert langsamer, als wenn Du die Werte per Hand (also mit Bitoperationen) umrechnest.
wenn du dich da mal nicht täuschst. ich würde vb-bitoperationen nicht mit denen von C gleichsetzen.
Konrad Rudolph schrieb:
@Boris: Wenn Du diesen Code als C++ bezeichnest, dann hat das Forum versagt.
wenn der code durch einen C++ compiler geht, dann *ist* es C++ code. ob's dir gefällt oder nicht.
-
big endian-freak schrieb:
Konrad Rudolph schrieb:
vb-freak schrieb:
ruf die winapi-funktionen 'htonl' oder 'htons' auf.
Ist garantiert langsamer, als wenn Du die Werte per Hand (also mit Bitoperationen) umrechnest.
wenn du dich da mal nicht täuschst. ich würde vb-bitoperationen nicht mit denen von C gleichsetzen.
Jetzt wird's spannend, ob wir von einem aktuellen VB reden oder von VB „Classic“, also Version 6 oder früher. Unter neuen Versionen sind die Bit-operationen auf jeden Fall gleichzusetzen. Im alten nicht, aber das ist auch irrelevant, es ist trotzdem auf jeden Fall schneller. Und zwar nicht nur theoretisch sondern praktisch und gemessen.