युग समय को C++ में कैसे बदलें?

सी ++ मानक पुस्तकालय में समय समारोह एक विशिष्ट, मानकीकृत तिथि और युग के रूप में जाना जाने वाला समय बीत चुके सेकंड लौटाता है। हालांकि इस मान में सिस्टम के वर्तमान समय और तारीख की गणना करने के लिए आवश्यक सभी जानकारी शामिल है, अपना खुद का युग समय अनुवाद कोड लिखना त्रुटि प्रवण है। मानक पुस्तकालय के प्रदान किए गए समय रूपांतरण कार्यों का उपयोग करना इस अनुवाद प्रक्रिया को तुच्छ बनाता है, जिससे आप अपने आवेदन के अधिक जटिल भागों पर ध्यान केंद्रित कर सकते हैं।

चरण 1

अपने आवेदन में सी ++ मानक पुस्तकालय की समय कार्यक्षमता शामिल करें। अपनी शामिल सूची के शीर्ष पर निम्न पंक्ति जोड़ें:

शामिल

चरण दो

युग के बाद से बीता हुआ सेकंड प्राप्त करें, और इसे स्थानीय रूप से संग्रहीत करें। समय() को कॉल करके और परिणाम को time_t प्रकार के ऑब्जेक्ट में संग्रहीत करके ऐसा करें। टाइम फंक्शन भी एक तर्क के रूप में time_t प्रकार के ऑब्जेक्ट के लिए एक पॉइंटर को स्वीकार करता है, लेकिन इस ऑब्जेक्ट को स्थानीय रूप से स्टैक पर स्टोर करना आसान है:

time_t timeSinceEpoch = समय (NULL);

चरण 3

समय रूपांतरण के परिणाम को संग्रहीत करने के लिए एक समय संरचना बनाएं। इस संरचना को time.h हेडर फ़ाइल में tm नाम की संरचना के रूप में परिभाषित किया गया है, और परिवर्तित समय के प्रत्येक घटक के लिए आसानी से नामित सदस्य चर प्रदान करता है:

टीएम समयपरिणाम;

tm संरचना के रूप में पहले प्राप्त time_t मान को संग्रहीत करने के लिए अंतर्निहित रूपांतरण फ़ंक्शन में से एक का उपयोग करें। सरलता के लिए, निम्न कोड एक time_t ऑब्जेक्ट को UTC tm संरचना में परिवर्तित करता है:

समय परिणाम = जीएमटाइम (और समय के बाद से युग);