यह प्रोग्राम एक विंडोजएक्सपी मशीन पर वीसी ++ 6.0 में लिखा गया है।मैं सीधे __int64 चर -2500000000 पर क्यों सेट नहीं कर सकता?
यदि मैं सीधे __int64 चर -2500000000 पर सेट करने का प्रयास करता हूं, तो इसे 32 बिट मान पर छोटा कर दिया जाता है और दोनों का पूरक लिया जाता है।
__int64 testval;
testval = -2500000000;
इस बिंदु testval पर 1794967293 (110 1010 1111 1101 0000 0111 0000 0000 बाइनरी) के बराबर होती है।
मैं नकारात्मक एक से गुणा +२५०००००००० को चर सेट और फिर करते हैं, यह काम करता है:
__int64 testval;
testval = 2500000000;
testval *= -1;
चर testval -2500000000 (1001 0101 0000 0010 1111 1001 0000 0000 बाइनरी) के बराबर होती है।
कोई विचार? धन्यवाद।
एमएसवीसी 6? आउच! उससे ठेस पहुँचती है! –