JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=b6499b44562e6227a4be640f2e15fadcMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

aus 2 short werten ein integer wert erstellen

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Florian
Super JLI'ler


Alter: 36
Anmeldedatum: 20.06.2003
Beiträge: 302

Medaillen: Keine

BeitragVerfasst am: 11.08.2007, 14:29    Titel: aus 2 short werten ein integer wert erstellen Antworten mit Zitat

Hallo

ich hab grad folgendes Problem. Habe 2 Werte mit dem Typ short und möchte dies nun zu einen integer zusammenfügen.

Wert 1 00000111 00011111 ( erster short wert)

Wert 2 11111110 00001011 ( zweiter short wert)


und nun möchte ich diese zwei Werte zu einen integer zusammenfügen das dieser nun folgenden werte besitzt.

00000111 00011111 11111110 00001011

Kann mir da einer bitte weiterhelfen hab schon gegoogelt aber leider nichts brauchbares gefunden. Möglicher weise fehlt mir der richtige Suchbegriff dazu.

Danke schon mal in Voraus
_________________
Theorie ist, wenn man alles weiss und nichts funktioniert.
Praxis ist, wenn alles funktioniert und keiner weiss warum.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
PeaceKiller
JLI Master


Alter: 35
Anmeldedatum: 28.11.2002
Beiträge: 970

Medaillen: Keine

BeitragVerfasst am: 11.08.2007, 14:44    Titel: Antworten mit Zitat

Nicht getestet aber so sollte es eigentlich gehen:
CPP:
short s1,s2;
int i = s1;
i |= s2<<16


Vielleicht muss man bei der letzten Anweisung auch vorher nach int casten …
_________________
»If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.«
– Robert X. Cringely, InfoWorld magazine
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Jonathan_Klein
Living Legend


Alter: 37
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 11.08.2007, 14:51    Titel: Antworten mit Zitat

http://msdn2.microsoft.com/en-us/library/ms632663.aspx
Könnte auch klappen.
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
The Lord of Programming
Living Legend


Alter: 37
Anmeldedatum: 14.03.2003
Beiträge: 3122

Medaillen: Keine

BeitragVerfasst am: 11.08.2007, 15:12    Titel: Antworten mit Zitat

Kannst genauso gut shiften und addieren:

CPP:
short s1,s2;

int i=(s1<<16)+s2;

_________________
www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console


Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
DirectXer
Dark JLI'ler



Anmeldedatum: 05.02.2005
Beiträge: 1201
Wohnort: Köln
Medaillen: Keine

BeitragVerfasst am: 12.08.2007, 18:37    Titel: Antworten mit Zitat

The Lord of Programming hat Folgendes geschrieben:
Kannst genauso gut shiften und addieren:

CPP:
short s1,s2;

int i=(s1<<16)+s2;

oder shiften und bit-or, ums noch schneller zu haben:
CPP:
int i = (s1 << 16) | s2;


In der WinAPI wird diese Technik bes. oft mit Message-Parametern benutz ( Arrow wParam, lParam) Dazu gibt es die Makros MAKEWORD (meistens 2 unsigned chars zu einem unsigned short) und MAKELONG (meistens zwei unsigned shorts zu einem unsigned int). Diese hängen auch zusätzlich von der Architektur ab, damit dein endgültiger Wert auch auf jeder Plattform dieselbe Größe hat)

Gruß DXer
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum