c - क्यों एक int के रूप में 6*1000*1000 स्वरूपण और 6000000 नहीं




syntax formatting (2)

इस सवाल का पहले से ही उत्तर दिया गया है:

मैं मिडलवेयर का एक कोड पढ़ रहा था जो सी में लिखा गया है और कोड में उन्होंने निम्नलिखित लिखा है:

usleep(6*1000*1000);

तो मेरा सवाल है:

क्या ऐसा लिखने के पीछे कोई कारण है? क्यों नहीं सिर्फ 6000000 लिखते हैं? इस गुणा करना प्रोग्राम के प्रदर्शन पर कोई प्रभाव पड़ता है?


यह सिर्फ स्रोत को पढ़ने में आसान बनाता है गुणन के साथ, संख्या स्पष्ट रूप से 6 मिलियन है

चूंकि यह एक स्थिरांक के लिए मूल्यांकन करता है, कंपाइलर संकलन समय पर लगातार मूल्यांकन करेगा और संकलित कोड में कोई अंतर नहीं होगा।


सबसे अधिक संभावना है, यह पठनीयता के लिए किया गया था।

कोड में 6000000 को देखते हुए, आप तुरंत नहीं देख सकते कि कितने शून्य हैं इस मूल्य के बीच दृश्य अंतर और 60000000 या 600000 महान नहीं है इसे बांटने के द्वारा, यह देखना आसान बनाता है।

किसी भी सभ्य संकलक को संकलन के समय 6*1000*1000 गणना करना चाहिए, इसलिए कोई प्रदर्शन प्रभाव नहीं होना चाहिए।







int