C++ में unsigned पूर्णांकों के ओवरफ्लो का पता कैसे लगाएं?
सभी को नमस्कार! मैं एक शुरुआती C++ डेवलपर हूं और unsigned पूर्णांकों के ओवरफ्लो की समस्या का सामना कर रहा हूं। सेंसर से डेटा प्रोसेस करने के लिए एक प्रोग्राम लिख रहा हूं, जहां मान बड़े हो सकते हैं। काउंटर स्टोर करने के लिए `unsigned int` का उपयोग कर रहा हूं, लेकिन देखा कि कभी-कभी प्रोग्राम अजीब व्यवहार करता है।
यहां एक कोड उदाहरण है जो मुझे भ्रमित करता है:
```cpp
#include
int main() {
unsigned int a = 4294967295; // unsigned int के लिए अधिकतम मान
unsigned int b = 1;
unsigned int result = a + b;
std::cout << "a + b = " << result << std::endl; // 0 आउटपुट करता है, लेकिन मुझे एरर की उम्मीद थी
return 0;
}
```
मैं जानता हूं कि C++ में signed पूर्णांकों का ओवरफ्लो अनिर्धारित व्यवहार (UB) है। लेकिन unsigned के बारे में क्या? मानक में कहा गया है कि unsigned का ओवरफ्लो "रैप" होता है