Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

C में स्ट्रिंग के लिए strlen() और sizeof() के बीच अंतर


परिचय

प्रोग्रामिंग में स्ट्रिंग को कैरेक्टर्स के संग्रह के रूप में परिभाषित किया जाता है। किसी स्ट्रिंग को बनाने में कितने कैरेक्टर्स उपयोग हुए हैं, यह जानने के लिए C दो दृष्टिकोण प्रदान करता है: strlen() और sizeof()।

ये दोनों विधियाँ टारगेट ऑपरेंड की लंबाई पता लगाने के लिए उपयोग की जाती हैं, लेकिन आंतरिक कार्यान्वयन के आधार पर इनमें मूलभूत अंतर हैं:

क्र.सं. मापदंड strlen() sizeof()
1 परिभाषा strlen() C में string.h हेडर फाइल में परिभाषित एक पूर्वनिर्धारित फंक्शन है। sizeof() एक यूनरी ऑपरेटर है, पूर्वनिर्धारित फंक्शन नहीं।
2 कार्यान्वयन (Implementation) strlen आंतरिक रूप से स्ट्रिंग में कैरेक्टर्स की गिनती करता है, नल वैल्यू को छोड़कर; अर्थात यह नल-टर्मिनेटेड स्ट्रिंग की लंबाई लौटाता है। sizeof किसी भी प्रकार के डेटा (आवंटित) का वास्तविक आकार बाइट्स में गणना करता है, नल वैल्यू सहित।
3 नल हैंडलिंग (Null handling) strlen नल को बाहर रखता है और इसे स्ट्रिंग की कुल लंबाई की गणना में शामिल नहीं करता। sizeof वेरिएबल के मान की परवाह नहीं करता; यह किसी भी प्रकार के डेटा (आवंटित) का वास्तविक आकार बाइट्स में गणना करता है, नल वैल्यू सहित।
  1. - Java में StringBuffer और StringBuilder के बीच अंतर

    StringBuffer और StringBuilder दोनों म्यूटेबल क्लास हैं जिनका उपयोग स्ट्रिंग ऑब्जेक्ट पर ऑपरेशन करने के लिए किया जा सकता है जैसे स्ट्रिंग का रिवर्स, स्ट्रिंग को जोड़ना आदि। हम स्ट्रिंग का नया ऑब्जेक्ट बनाए बिना स्ट्रिंग को मॉडिफाई कर सकते हैं। StringBuffer थ्रेड-सेफ है जबकि StringBuilder थ्रेड-सेफ न

  1. OneNote और OneNote for Windows 10 के बीच अंतर OneNote और OneNote for Windows 10 के बीच अंतर

    Windows 10 OneNote ऐप के मुफ्त संस्करण के साथ आता है जिसे OneNote for Windows 10 कहा जाता है जो आपको कई कार्य करने की अनुमति देता है। उदाहरण के लिए, आप इसे OneDrive के साथ सिंक कर सकते हैं (व्यक्तिगत और व्यावसायिक दोनों खातों में कई उपकरणों पर), अपने हस्तलिखित नोट्स खोज सकते हैं, ईमेल सामग्री को One

  1. पायथन प्रोग्राम: ऑड और इवन डिजिट्स के योग का अंतर पायथन प्रोग्राम: ऑड और इवन डिजिट्स के योग का अंतर

    इस लेख में, हम दिए गए प्रॉब्लम स्टेटमेंट को हल करने के समाधान और दृष्टिकोण के बारे में सीखेंगे। प्रॉब्लम स्टेटमेंट – एक इंटीजर दिए जाने पर, हमें यह गणना करने की आवश्यकता है कि ऑड डिजिट्स के योग और इवन डिजिट्स के योग का अंतर 0 है या नहीं। ब्रूट-फोर्स दृष्टिकोण नंबर्स में सभी इवन और ऑड डिजिट्स का योग