Nie znalazłem żadnego, ale trudno mi uwierzyć, że go nie ma.Czy istnieje funkcja logiczna (boolean) XOR w bibliotece standardowej C lub C++?
Odpowiedz
Boolean XOR to to samo co !=
, "nie równe".
p | q | p != q
--+---+-------
F | F | F
T | F | T
F | T | T
T | T | F
http://en.wikipedia.org/wiki/Truth_table#Logical_conjunction
Jeśli szukasz czy dwie wartości są identyczne, można użyć !=
lub operatory bitowe ^
. Możesz użyć tego, jeśli Twoje wartości są już bool
. Jednakże, jeśli wartości nie są czysto bool
, wrzucili do bool
pierwszy:
((bool)myVal)!=((bool)myOtherVal)
((bool)myVal)^((bool)myOtherVal)
//either works
Czy jesteś absolutnie pewny, że drugi działa? Czy standard mówi, że wszystkie zmienne 'bool', które oceniają tę samą wartość, są bitowe równe? –
Nie jestem pewien standardu; działa w MinGW w systemie Windows. – IanPudney
To nic nie znaczy. –
- 1. Czy istnieje funkcja `flip` w standardowej bibliotece OCaml?
- 2. Czy istnieje odpowiednik C++ dla `` std :: mem :: drop` w bibliotece standardowej?
- 3. Funkcja GCD w bibliotece C++ sans cmath
- 4. C# DllImport z C++ funkcja logiczna nie powraca poprawnie
- 5. Jaki jest odpowiednik opcji boost :: variant w bibliotece standardowej C++?
- 6. Jakie klasy wyjątków znajdują się w standardowej bibliotece C++
- 7. Funkcja wywoływania w bibliotece Inlined C
- 8. czy funkcja tee istnieje gdzieś w bibliotece F #?
- 9. C# Enum w bibliotece C++
- 10. PEP 257 docstring trim w standardowej bibliotece?
- 11. Wewnętrzna praca biblioteki standardowej C
- 12. Czy istnieje dyrektywa preprocesora do wykrywania biblioteki standardowej C++ 11?
- 13. Czy istnieje workflow opcji standardowej w F #?
- 14. C# przekonwertuj bit na boolean
- 15. Bezpieczeństwo wątków biblioteki standardowej C na OS X
- 16. wersje biblioteki standardowej C++
- 17. Czy istnieje powód, dla którego nie ma std :: identity w standardowej bibliotece?
- 18. Dlaczego noexcept nie jest więcej używane w standardowej bibliotece?
- 19. Czy nagłówek biblioteki standardowej C++ może zawierać standardowy nagłówek C?
- 20. Czy istnieje funkcja skrótu glibc?
- 21. Czy istnieje wieloplatformowa biblioteka wątków w C++?
- 22. Diagnozowanie EXC_BAD_INSTRUCTION w bibliotece standardowej Swift
- 23. Czy istnieje funkcja języka C do obliczania stopni/radianów?
- 24. C++ Ocena Boolean
- 25. Czy ta funkcja istnieje? Definiowanie własnych klamrowych w C#
- 26. Czy ktoś wie o bibliotece kodów QR C/C++ Unix?
- 27. Konwersja logiczna tworzenie Bean boolean użyciu Wiosna
- 28. Sprawdź, czy funkcja jest w języku C lub Lua zaimplementowana
- 29. Czy istnieje coś takiego jak "funkcja" Haskella wbudowana w Scalę?
- 30. Czy istnieje odpowiednik statycznego C w C#?
Wow, całkowicie brakowało tego ... Dzięki. –
Nie zgadzam się. Wyrażenie "1! = 2" ma wartość "prawda", ale "1 XOR 2" jest zdecydowanie fałszywe, ponieważ zarówno 1, jak i 2 są "prawdziwe". Aby użyć operatora! = Jako XOR, musisz najpierw rzucić na 'bool'. – IanPudney
@incxorin: to bzdura. Pytałem o _logiczne_ XOR, 1 i 2 nie są wartościami _logicznymi. W języku C++ logiczny oznacza 'bool'. –