2013-02-23 59 views
6

इस तरह के एक साधारण सवाल पूछने के लिए खेद है, लेकिन इन चीजों को Google के लिए मुश्किल है।उद्देश्य सी आईओएस में^मतलब क्या है?

मेरे पास आईओएस में कोड है जो सेल्सियस और फारेनहाइट के बीच स्विचिंग टॉगल से जुड़ा हुआ है और मुझे नहीं पता कि^1 का क्या अर्थ है। self.celsius बूलियन

धन्यवाद

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

यह एक बिटवाइज़ XOR ऑपरेटर को संदर्भित करता है। इस पर एक नज़र डालें: http://stackoverflow.com/questions/1912023/caret-in-objective-c – lakesh

+0

संकेत: जब आप इस तरह के मुद्दे पर फंस जाते हैं तो उद्देश्य उद्देश्य-सी के लिए Google नहीं है, सिर्फ "सी" के लिए Google (साथ ही, ज़ाहिर है, अन्य उचित शर्तें, जैसे "ऑपरेटर")। –

+1

आप 'self.celsius = के बजाय ऐसा क्यों करेंगे? self.celsius' यह सिर्फ भ्रमित सही है? – Robert

उत्तर

8

यह एक सी भाषा जिसका अर्थ है 'बिटवाइस विशेष या "ऑपरेटर है।

XOR

एक बिटवाइज़ XOR समान अवधि की दो बिट पैटर्न लेता है और इसी बिट्स की प्रत्येक जोड़ी पर तार्किक अनन्य या कार्रवाई निष्पादित करता है:

Wikipedia एक अच्छा विवरण देता है। परिणाम प्रत्येक स्थिति 1 है यदि केवल पहला बिट 1 है या केवल दूसरा बिट 1 है, लेकिन 0 होगा यदि 0 या दोनों 0 हैं। इस में हम दो बिट्स की तुलना निष्पादित करते हैं, 1 होने के नाते यदि दो बिट्स अलग हैं, और 0 यदि वे समान हैं। उदाहरण के लिए:

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

बिटवाइज़ XOR एक रजिस्टर (भी टॉगल या फ्लिप कहा जाता है) में चयनित बिट्स को उलटने के लिए इस्तेमाल किया जा सकता है। के साथ XORing द्वारा किसी भी बिट को टॉगल किया जा सकता है। उदाहरण के लिए, बिट पैटर्न 0010 (दशमलव 2) दिया गया है, दूसरी और चौथी बिट्स को थोड़ा सा पैटर्न के साथ दूसरी और चौथी स्थितियों में 1 बिट के साथ टॉगल किया जा सकता है:

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

स्पष्टीकरण के लिए धन्यवाद –

1

यह एक विशेष या आपरेशन है।