Or <> |

Für allgemeine Fragen zur Programmierung mit PureBasic.
orange-blue
Beiträge: 556
Registriert: 04.09.2004 22:23
Kontaktdaten:

Or <> |

Beitrag von orange-blue »

Ist etwa der Befehl Or kein richtiges Or sonder nur das |?
Zuletzt geändert von orange-blue am 23.04.2005 21:34, insgesamt 1-mal geändert.
Benutzeravatar
Danilo
-= Anfänger =-
Beiträge: 2284
Registriert: 29.08.2004 03:07

Re: Or <> |

Beitrag von Danilo »

orange-blue hat geschrieben:Ist etwa der Befehl Or kein richtiges Or sonder nur das |?[/u]
Or = logisches Oder, ergibt 0 oder 1
| = binäres Oder (wird binär verknüpft)

Beispiel:

Code: Alles auswählen

a = %0001 |  %1000
Debug a
Debug Bin(a)

Debug "-----"

b = %0001 Or %1000
Debug b
Debug Bin(b)
Zuletzt geändert von Danilo am 23.04.2005 21:22, insgesamt 1-mal geändert.
cya,
...Danilo
"Ein Genie besteht zu 10% aus Inspiration und zu 90% aus Transpiration" - Max Planck
Benutzeravatar
Deeem2031
Beiträge: 1232
Registriert: 29.08.2004 00:16
Wohnort: Vorm Computer
Kontaktdaten:

Beitrag von Deeem2031 »

Or ist ein logisches OR und | ist ein bitweises OR, hängt also davon ab was du machen willst, um zu bestimmen welches das "richtige" ist.
Bild
[url=irc://irc.freenode.org/##purebasic.de]irc://irc.freenode.org/##purebasic.de[/url]
orange-blue
Beiträge: 556
Registriert: 04.09.2004 22:23
Kontaktdaten:

Beitrag von orange-blue »

aso stimmt!
(verdammt) :freak:
GPI
Beiträge: 1511
Registriert: 29.08.2004 13:18
Kontaktdaten:

Beitrag von GPI »

Wichtige Info: OR und AND sind ausschließlich für "IF" gedacht!

Außerhalb von "IF" ist es nicht richtig definiert. Ich hatte schon mal ein Problem mit einen Sonderfall....
CodeArchiv Rebirth: Deutsches Forum Github Hilfe ist immer gern gesehen!
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

GPI hat geschrieben:Wichtige Info: OR und AND sind ausschließlich für "IF" gedacht!

Außerhalb von "IF" ist es nicht richtig definiert. Ich hatte schon mal ein Problem mit einen Sonderfall....
Sollte eigentlich auch mit While und Until gehen, da es sich in diesen Fällen auch nicht um Zuweisungsoperatoren handelt.

Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Danilo
-= Anfänger =-
Beiträge: 2284
Registriert: 29.08.2004 03:07

Beitrag von Danilo »

ts-soft hat geschrieben:
GPI hat geschrieben:Wichtige Info: OR und AND sind ausschließlich für "IF" gedacht!

Außerhalb von "IF" ist es nicht richtig definiert. Ich hatte schon mal ein Problem mit einen Sonderfall....
Sollte eigentlich auch mit While und Until gehen, da es sich in diesen Fällen auch nicht um Zuweisungsoperatoren handelt.
*Eigentlich* sollte das immer gehen - wenn nicht, ist es IMHO ein Fehler.

Es geht um den Ausdruck "%0001 Or %1000" der 0 oder 1
zurückliefert, genauso wie auch bei "a And b".
Wie das Ergebniss, 0 oder 1, ausgewertet wird ist eigentlich
egal. "If 1", "While 1", "x = 1", ...

Für PB gibt es halt keine Sprachspezifikation wo man sowas
nachlesen kann. Ist halt alles Zufall. Mal funktioniert's, mal nicht.
cya,
...Danilo
"Ein Genie besteht zu 10% aus Inspiration und zu 90% aus Transpiration" - Max Planck
Antworten