Hallo ich hab ein Programmcode den ich zur zeit versuche nach zuvollziehen der RC5-Senderoutine beeinhaltet. jedoch gib es dort ein Zeile wo ich nicht weiß was die eigentlich macht weil mir der Befehl bis jetzt noch nicht unter gekommen ist. Viell könnt ihr mir weiter helfen. uint8_t half = (bit ^ ((halfbitcounter == 0) ? 1 : 0)); ich weiß hier wird eine variable definiert mit dem namen half und sollte eigentlich nur den wert 0 und 1 annehmen (Is aus ner Timerroutine) bit is auch entweder eine 0 oder eine 1 sowie halnfbitcounter auch mein problem is halt nur das ich jetzt nicht verstehe wie die einzelnen Komponenten nun verknüpft sind --> was bedeutet das ^, und das ? sowie das 1: 0 ??? Wenn s mir einer erklären könnte wäre ich sehr dankbar
Kurz aus dem Handbuch: ^ bitwise exclusive or ?: conditional (the only 3-operand operator in C) ((halfbitcounter == 0) ? 1 : 0) ist eine Kurzform von IF Liefert hier eine 1 (erster Rückgabewert) wenn die Bedingung (halfbitcounter == 0) wahr ist sonst 0 (zweiter Rückgabewert) if(halfbitcounter == 0){ half = bit XOR 1; } else { half = bit XOR 0; } avr
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.