2010-03-11 13 views

उत्तर

15

>>> अहस्ताक्षरित सही बदलाव है, इसलिए मुझे लगता है कि सी में इस रूप में

unsigned int foo; 
unsigned int bar = foo >> whatever; 
24

सी में एक ही हो सकता है, एक अहस्ताक्षरित पारी प्राप्त करने के लिए, तो आप सिर्फ एक अहस्ताक्षरित प्रकार पर एक बदलाव है।

unsigned int result = (unsigned int)valueToBeShifted >> shiftAmount; 

नोट कोई गारंटी नहीं कि >> एक हस्ताक्षरित प्रकार पर आप सी में एक हस्ताक्षरित पारी देता है कि वहाँ - यह कार्यान्वयन परिभाषित व्यवहार। हालांकि, यदि आम प्रकार पर हस्ताक्षर किए गए हैं तो सबसे आम कार्यान्वयन एक हस्ताक्षरित शिफ्ट उत्पन्न करते हैं।

संबंधित मुद्दे