Avatar ·

ऑपरेटर <, <= से तेज़ है? C++ में प्रदर्शन तुलना

सभी को नमस्ते! मैं एक शुरुआती C++ डेवलपर हूँ, और मेरे मन में तुलना ऑपरेटरों के प्रदर्शन के बारे में एक सवाल है। मैं एक लूप लिख रहा हूँ जो 10 मिलियन तत्वों की एक array को iterate करता है, और मुझे एक क्रिया तब तक करनी है जब तक index एक निश्चित मान से कम या बराबर है। मैं `for (int i = 0; i <= n; i++)` का उपयोग कर रहा हूँ। लेकिन मेरे सहकर्मी ने कहा कि `i < n + 1` का उपयोग करना बेहतर है, क्योंकि ऑपरेटर `<`, `<=` से तेज़ काम करता है। उनका दावा है कि assembly स्तर पर `<` एक CPU cycle में execute होता है, जबकि `<=` दो cycles में, क्योंकि CPU को equality की अतिरिक्त जाँच करनी पड़ती है। मैंने अपने कोड में दोनों विकल्प आज़माए: ```cpp #include #include const int N = 10000000; void test_less_equal() { int sum = 0; for (int i = 0; i <= N; ++i) { sum += i; } std::cout << sum << std::endl; } void test_less() { int sum = 0; for (int i = 0; i < N + 1; ++i) { sum += i; } std::cout << sum << std::endl; }