जैसा कि हम जानते हैं कि प्रोग्रामिंग में स्ट्रिंग को वर्णों के संग्रह के रूप में परिभाषित किया जा सकता है। अब यह पता लगाने की आवश्यकता के लिए कि स्ट्रिंग बनाने के लिए कितने वर्णों का उपयोग किया जा रहा है, C दो दृष्टिकोण प्रदान करता है जो strlen() और sizeof() हैं।
जैसा कि उपरोक्त बिंदु में उल्लेख किया गया है, इन दोनों विधियों का उपयोग लक्ष्य संकार्य की लंबाई का पता लगाने के लिए किया जाता है, लेकिन उनके आंतरिक कार्यान्वयन के आधार पर दोनों के बीच कुछ बुनियादी अंतर हैं।
Sr. नहीं. | कुंजी | <वें शैली="पाठ्य-संरेखण:केंद्र;">strlen() <वें शैली="पाठ्य-संरेखण:केंद्र;">आकार()वें>||
---|---|---|---|
1 | परिभाषा | strlen() एक पूर्वनिर्धारित फ़ंक्शन है जिसे C में string.h नाम की हैडर फ़ाइल में परिभाषित किया गया है। | दूसरी ओर sizeof() एक यूनरी ऑपरेटर है और पूर्वनिर्धारित फ़ंक्शन नहीं है। |
2 | कार्यान्वयन | strlen को आंतरिक रूप से कार्यान्वित किया जाता है क्योंकि यह मुख्य रूप से शून्य मानों को छोड़कर स्ट्रिंग में वर्णों की संख्या की गणना करता है, यानी शून्य समाप्ति स्ट्रिंग की लंबाई देता है। | जबकि sizeof इस तरह से कार्यान्वित किया जाता है कि यह बाइट्स में (शून्य मानों सहित) किसी भी प्रकार के डेटा (आवंटित) के वास्तविक आकार की गणना करता है। |
3 | शून्य हैंडलिंग | strln नल को बाहर करता है और इसे स्ट्रिंग की लंबाई की कुल गणना में शामिल नहीं करता है। | दूसरी ओर sizeof वेरिएबल के मानों की परवाह नहीं करता है और बाइट्स (शून्य मानों सहित) में किसी भी प्रकार के डेटा (आवंटित) के वास्तविक आकार की गणना करता है। |