Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Leax Mini JLI'ler
Anmeldedatum: 15.07.2003 Beiträge: 43
Medaillen: Keine
|
Verfasst am: 03.09.2003, 15:19 Titel: Mir fremde Zeichen |
|
|
Code: | void DeterminePixelFormat(LPDIRECTDRAWSURFACE7 lpDDSurface)
{
// Pixelformat bestimmen
DDPIXELFORMAT ddpf;
ddpf.dwSize = sizeof(ddpf);
lpDDSurface->GetPixelFormat(&ddpf);
// Werte für Rot bestimmen
while(0 == (ddpf.dwRBitMask & 1))
{
ddpf.dwRBitMask >>= 1;
PosRed++;
}
ShiftRed = (ddpf.dwRBitMask == 31) ? 3 : 2;
// Werte für Grün bestimmen
while(0 == (ddpf.dwGBitMask & 1))
{
ddpf.dwGBitMask >>= 1;
PosGreen++;
}
ShiftGreen = (ddpf.dwGBitMask == 31) ? 3 : 2;
// Maske für blau beginnt immer bei 0
PosBlue = 0;
ShiftBlue = (ddpf.dwBBitMask == 31) ? 3 : 2;
}
|
so der Quellcode ist aus dem JLI Buch und enthält die mir fremden Befehle:
1.
Code: | while(0 == (ddpf.dwRBitMask & 1)) |
was bedeutet denn das eine & Zeichen?
2.
Code: | ddpf.dwRBitMask >>= 1; |
was bedeutet denn >>= ?
3.
Code: | ShiftRed = (ddpf.dwRBitMask == 31) ? 3 : 2; |
ich weiß nur, dass das ? Zeichen eine Abkürzung für eine IF Schleife ist, aber wie sieht diese hier genau aus? |
|
Nach oben |
|
|
abc_d JLI Master Trainee
Alter: 34 Anmeldedatum: 27.01.2003 Beiträge: 615
Medaillen: Keine
|
Verfasst am: 03.09.2003, 15:36 Titel: |
|
|
<< ist die bitweise verschiebung nach links
9 << 1=38
Die zahl 9 ist binär:
1001
2 stellen nach links:
100100 ist 36
& ist ein bitweises und:
Wenn das bit auf der rechten und das Bit auf der linken seite 1 ist ist das ergebnis 1 andernfalls 0:
1001 & 1000 = 1000
[edit]
>>= verschiebt die linke Variable bitweise nach rechts
anwendung:
foo>>=6;
also das gleiche wie foo=foo>>6;
(das = ist gleich wie bei +=) _________________ http://mitglied.lycos.de/sarti/linuxisevil.gif Linux is evil - get the fact.
Never touch a running System - der Systemling
Zuletzt bearbeitet von abc_d am 06.09.2003, 08:45, insgesamt einmal bearbeitet |
|
Nach oben |
|
|
Leax Mini JLI'ler
Anmeldedatum: 15.07.2003 Beiträge: 43
Medaillen: Keine
|
Verfasst am: 03.09.2003, 15:54 Titel: |
|
|
und das Fragezeichen |
|
Nach oben |
|
|
Hazel JLI MVP
Alter: 39 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 03.09.2003, 16:01 Titel: |
|
|
Das ist eine verkürzte If-Anweisung.
(bedingung) ? (then-teil) : (else-teil) _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
|
|