Boolean
-
- Beiträge: 11
- Registriert: 19.02.2010 15:49
Boolean
Hallo,
Ich benötige eine boolean Variable also eine Variable die entweder 1 oder 0 sein kann.
Ich benötige eine boolean Variable also eine Variable die entweder 1 oder 0 sein kann.
Es gibt drei arten von Menschen, die einen können Zählen, die anderen nicht.
- Mok
- BotHunter
- Beiträge: 1484
- Registriert: 26.12.2005 14:14
- Computerausstattung: MSI GX780R
Intel Core i5-2410M
Nvidia GT 555M
Windows 7 Home Premium 64 bit - Wohnort:
Re: Boolean
Gibts in PB nicht.
Nimm einfach eine Long- oder Word-Variable, die du dann auf #True (1) oder #False (0) setzt.
Edit: Willkommen im Forum
Nimm einfach eine Long- oder Word-Variable, die du dann auf #True (1) oder #False (0) setzt.
Edit: Willkommen im Forum
Win 7 Home Premium 64 bit | PureBasic 5.20 - x86 und x86-64 | Firefox [aktuelle stable-Version hier einfügen]
"Jeder macht irgendwann mal Fehler, darum gibt's auch Bleistifte mit Radiergummi." --Carl
"Jeder macht irgendwann mal Fehler, darum gibt's auch Bleistifte mit Radiergummi." --Carl
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
Re: Boolean
es gibt keine expliziten Booleans in PureBasic.
auch in Anderen Sprachen wird dazu eine Registergröße herangezogen, also .i, niemals ein einzelnes Bit weil es viel zu aufwendig wäre das zu isolieren.
du kannst in PB jeden beliebigen Typ benutzen.
der Testwird immer auf <> 0 testen, der Testtestet auf = 0
dir stehen auch die numerischen Konstanten #True ( =1 ) und #False ( =0 ) zur Verfügung.
Beachte dabei dass And, Or und Not rein logische Operatoren sind,
sie sind nicht dafür ausgelegt, einen Zahlenwert zurückzuliefern der in Berechnungen einfließen kann.
Sogenannte Boole'sche Ausdrücke, die aus einem Vergleich einen Zahlenwert zurückliefern werden nicht von PureBasic unterstützt.
auch in Anderen Sprachen wird dazu eine Registergröße herangezogen, also .i, niemals ein einzelnes Bit weil es viel zu aufwendig wäre das zu isolieren.
du kannst in PB jeden beliebigen Typ benutzen.
der Test
Code: Alles auswählen
If Value
Code: Alles auswählen
If Not Value
dir stehen auch die numerischen Konstanten #True ( =1 ) und #False ( =0 ) zur Verfügung.
Beachte dabei dass And, Or und Not rein logische Operatoren sind,
sie sind nicht dafür ausgelegt, einen Zahlenwert zurückzuliefern der in Berechnungen einfließen kann.
Sogenannte Boole'sche Ausdrücke, die aus einem Vergleich einen Zahlenwert zurückliefern werden nicht von PureBasic unterstützt.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
-
- Beiträge: 11
- Registriert: 19.02.2010 15:49
Re: Boolean
Ich hab jezt aber eine library der ich den Wert übergebe will.
Es gibt drei arten von Menschen, die einen können Zählen, die anderen nicht.
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
Re: Boolean
bitte genauer.
... es ist anzunehmen, dass diese ein Long (32bit) erwartet.
das ist aber kein Versprechen, genaueres kann man nur sagen, wenn man die Lib und die Ausgangssprache kennt.
... es ist anzunehmen, dass diese ein Long (32bit) erwartet.
das ist aber kein Versprechen, genaueres kann man nur sagen, wenn man die Lib und die Ausgangssprache kennt.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
-
- Beiträge: 11
- Registriert: 19.02.2010 15:49
Re: Boolean
DirectX library,
C:\WINDOWS\system32\d3d9.dll
C:\WINDOWS\system32\d3d9.dll
Es gibt drei arten von Menschen, die einen können Zählen, die anderen nicht.
- Mok
- BotHunter
- Beiträge: 1484
- Registriert: 26.12.2005 14:14
- Computerausstattung: MSI GX780R
Intel Core i5-2410M
Nvidia GT 555M
Windows 7 Home Premium 64 bit - Wohnort:
Re: Boolean
Hast du schon probiert, ob es funzt, wenn man eine Long-Variable mit Inhalt #True (oder eben #False) an die Funze schickt?BloodyBambus hat geschrieben:DirectX library,
C:\WINDOWS\system32\d3d9.dll
Win 7 Home Premium 64 bit | PureBasic 5.20 - x86 und x86-64 | Firefox [aktuelle stable-Version hier einfügen]
"Jeder macht irgendwann mal Fehler, darum gibt's auch Bleistifte mit Radiergummi." --Carl
"Jeder macht irgendwann mal Fehler, darum gibt's auch Bleistifte mit Radiergummi." --Carl
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
Re: Boolean
welche Funktion? hast du die Beschreibung der Funktion irgendwo online? (MSDN z.B.)BloodyBambus hat geschrieben:DirectX library,
C:\WINDOWS\system32\d3d9.dll
dann gib mir mal den Link, ich les sie mir mal durch und sag dann bescheid.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
-
- Beiträge: 11
- Registriert: 19.02.2010 15:49
Re: Boolean
ich hab eigentliche keine direkte anleitung für die dll ich habe nur eine vom directX sdk und daraus versuche ich es abzuleiten.
I habe 2 Datien eine main und in der andere sind die structuren defeniert.
Die erste "Main":
und die zweite "Structures":
I habe 2 Datien eine main und in der andere sind die structuren defeniert.
Die erste "Main":
Code: Alles auswählen
XIncludeFile "structures.pb"
OpenLibrary(1,"C:\WINDOWS\system32\d3d9.dll")
OpenWindow(1,10,10,300,300,"D3D Test")
OpenConsole()
CallFunction(1,"Direct3DCreate9",32)
d3dpp.D3DPresent_Parameters
d3dpp\Windowed = True
d3dpp\SwapEffect = 0
d3dpp\BackBufferFormat = 0
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_CloseWindow
Close = 1
EndIf
Until Close = 1
Code: Alles auswählen
Structure D3DPresent_Parameters
BackBufferWidth.l ;sollte ein Unsigned integer sein
BackBufferHeight.l ;sollte ein Unsigned integer sein
BackBufferFormat.l ;sollte ein D3DFormat sein hab aber in der header Datei gefunden das es auch nur ein Unsigned integer ist.
BackBufferCount.l ;sollte ein Unsigned integer sein
MultiSampleType ;sollte ein Multisampletyp sein, vermutlich auch nur ein integer
MultiSampleQuality.w ;sollte ein MultisampleQuality sein, vermutlich word
SwapEffect ;Swapeffect, vermutlich integer
hDeviceWindow.l ;Device Window
Windowed.l ;sollte ein boolean sein
EnableAutoDepthStencil.l ;sollte ein boolean sein
AutoDepthStencilFormat.l ;D3DFormat, vermutlich integer
Flags.w ;sollte word sein
;/* FullScreen_RefreshRateInHz must be zero For Windowed mode */
Screen_RefreshRateInHz.l ;sollte Unsigned integer sein
PresentationInterval.l ;sollte UNsigned integer sein
EndStructure
Es gibt drei arten von Menschen, die einen können Zählen, die anderen nicht.
Re: Boolean
Flags und MultiSampleQuality ist falsch, das ist ein DWORD (DoubleWord), also 4 Bytes (Long).
BOOL ist 4 Bytes gross, also auch Long, genauso wie MultiSampleType. Der Rest sieht gut aus, zumindest fuer 32 bit.
Suche am besten uber google
z.b.
http://www.google.de/search?as_q=D3DPre ... =&safe=off
BOOL ist 4 Bytes gross, also auch Long, genauso wie MultiSampleType. Der Rest sieht gut aus, zumindest fuer 32 bit.
Suche am besten uber google
z.b.
http://www.google.de/search?as_q=D3DPre ... =&safe=off