ओवरफ़्लोइंग unsigned int
में जब मैं इसे बहता हूं तो क्या होगा? विशिष्ट होने के लिए, मैं दो unsigned int
एस के साथ गुणा करना चाहता हूं: गुणा समाप्त होने के बाद unsigned int
में क्या होगा?बिना हस्ताक्षर किए गए Int
unsigned int someint = 253473829*13482018273;
यह http://stackoverflow.com/questions/199333/best-way-to-detect-integer-overflow-in-c-c –
का डुप्लिकेट प्रतीत होता है क्यों नहीं आज़माएं और देखें कि आपको क्या मिलता है? आम तौर पर, जब एक हस्ताक्षरित int बहती है, तो यह शून्य हो जाती है। तो 'UINT_MAX + 5' रोल हो जाता है और 4 हो जाता है। –
यह अधिकतम uint मान और ओवरफ़्लो मान के मूल्य के बीच का अंतर होगा। आइए इसे सरल बनाएं। आइए मान लें कि अधिकतम यूआईटी 5 है। आप 2 * 4 जोड़ना चाहते हैं, इसलिए यह 8 के बजाय अंतिम मान 3 बनाता है। –