Autor Beitrag
louis123
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Mi 16.09.20 19:54 
Hallo
ich programmiere zwar schon länger aber ich habe noch nie operatoren (&) so benutzt.
was bedeutet dieser ausdruck?
ausblenden C#-Quelltext
1:
if ((screenData[pos] & 1) == 0)					

genau geht es um diesen abschnitt:
screenData[pos] & 1 oder beliebigevariable & 1

Moderiert von user profile iconTh69: C#-Tags hinzugefügt
Moderiert von user profile iconTh69: Titel (leicht) geändert.
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Mi 16.09.20 20:24 
docs.microsoft.com/d...ogical-and-operator-

Das ist der binärer AND Operator der ein bitweise UND Verknüpfung vornimmt.
Der gezeigte Ausdruck prüft ob das niederwertigste Bit gesetzt ist und wenn nicht wird der if Zweig ausgeführt.

Ganz so beliebig wie du andeutest sind die beteiligten Operanden nicht es sollen schon Zahlentypen sein.
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Do 17.09.20 11:17 
In diesem Fall wird einfach geprüft, ob der Wert gerade oder ungerade ist. Logisch ginge daher auch der Modulo-Operator hier:
ausblenden C#-Quelltext
1:
if ((screenData[pos] % 2) == 0)