यहां हम एक पहेली देखेंगे। मान लीजिए कोई प्रोग्राम है जो नीचे दिया गया है, तो हमें बताना होगा कि आउटपुट क्या होगा और क्यों?
उदाहरण
#include<iostream> using namespace std; int main() { int x = 0xab; ~x; cout << hex << x; }
तो आउटपुट क्या होगा? ~x पूरक संक्रिया कर रहा है। तो क्या यह पूरक परिणाम हेक्स रूप में दिखाता है?
वैसे आउटपुट निम्न की तरह है
आउटपुट
ab
तो, कोई बदलाव नहीं है। लेकिन क्यों? इसका कारण यह है कि ~x x को उसके पूरक रूप में परिवर्तित कर रहा है, लेकिन वह मान किसी भी चर को निर्दिष्ट नहीं किया गया है। व्यंजक R-मान व्यंजक है। जब तक लवल्यू का उपयोग नहीं किया जाता है तब तक इसे कुछ चरों में संग्रहीत नहीं किया जाएगा। अगर हम एल-वैल्यू डालते हैं तो यह इस तरह दिखेगा -
उदाहरण
#include<iostream> using namespace std; int main() { int x = 0xab; x = ~x; cout << hex << x; }
आउटपुट
ffffff54