2013-02-23 18 views
6

Bu kadar basit bir soru sorduğumuz için üzgünüz, ancak bu şeyler Google için zordur.Nesne c ios'ta^ne anlama gelir?

Celsius ile Fahrenheit arasında geçiş yapan tomota bağlı iOS'umda bir kod var ve ne anlama geldiğini bilmiyorum. self.celsius

Teşekkür

self.celsius = self.celsius^1; 
+0

olduğunu. Şuna bir göz atın: http://stackoverflow.com/questions/1912023/caret-in-objective-c – lakesh

+0

İpucu: Böyle bir sorunla karşılaştığınız zaman Google for Objective-C, sadece "C" için Google (artı, elbette, "operatörler" gibi diğer uygun şartlar). –

+1

bunu neden yaptın? Self.celsius =! self.celsius 'sadece kafa karıştırıcı değil mi? – Robert

cevap

8

O "Bit Exclusive OR" anlamına gelen bir C-dili operatörü bulunuyor Boole olduğunu.

bir bit-bazında XOR eşit uzunlukta iki bit örüntülerinin alır ve karşılık gelen bitlerin her çift mantıksal dışlamalı VEYA işlemini gerçekleştiren

XOR:

Wikipedia iyi bir açıklama sağlamaktadır. sonucu, yalnızca ilk bit 1 veya yalnızca saniye biti 1 ise her konum 1 olur, ancak her ikisi de 0 veya her ikisi de 1 ise 0 olur. Bu biz iki bit karşılaştırması gerçekleştirin İki bit farklı ise ve 0 aynıysa. Örneğin:

0101 (decimal 5) 
XOR 0011 (decimal 3) 
    = 0110 (decimal 6) 

bit-bazında XOR bir kayıt (mafsallı veya flip adlandırılır) 'de seçilen bit ters çevirmek için kullanılabilir. Herhangi bir bit, 1 ile XORing yoluyla değiştirilebilir. Örneğin, bit modeli 0010 (ondalık 2) verildiğinde, ikinci ve dördüncü bitler, ikinci ve dördüncü pozisyonlarda 1 içeren bir bit paterni ile bir bitsel XOR tarafından değiştirilebilir:

0010 (decimal 2) 
XOR 1010 (decimal 10) 
    = 1000 (decimal 8) 
+0

açıklama için teşekkürler –

1

seçkin VEYA işlemi bir bu.

İlgili konular