स्ट्रोल () फ़ंक्शन का उपयोग स्ट्रिंग को लंबे पूर्णांक में बदलने के लिए किया जाता है। यह सूचक को अंतिम वर्ण के बाद पहले वर्ण को इंगित करने के लिए सेट करता है। वाक्यविन्यास नीचे जैसा है। यह फ़ंक्शन cstdlib लाइब्रेरी में मौजूद है।
long int strtol(const char* str, char ** end, int base)
यह फ़ंक्शन तीन तर्क लेता है। ये तर्क नीचे दिए गए हैं -
- str: यह एक स्ट्रिंग की शुरुआत है।
- str_end: str_end फ़ंक्शन द्वारा अगले वर्ण पर सेट किया जाता है, अंतिम मान्य वर्ण के बाद, यदि कोई वर्ण है, अन्यथा शून्य।
- आधार: यह आधार निर्दिष्ट करता है। आधार मान (0, 2, 3,…, 35, 36) . के हो सकते हैं
यह फ़ंक्शन कनवर्ट किए गए लंबे int को लौटाता है। जब कैरेक्टर NULL की ओर इशारा करता है, तो वह 0.
. पर वापस आ जाता हैउदाहरण
#include <iostream> #include<cstdlib> using namespace std; main() { //Define two string char string1[] = "777HelloWorld"; char string2[] = "565Hello"; char* End; //The end pointer int base = 10; int value; value = strtol(string1, &End, base); cout << "The string Value = " << string1 << "\n"; cout << "Long Long Int value = " << value << "\n"; cout << "End String = " << End << "\n"; //remaining string after long long integer value = strtol(string2, &End, base); cout << "\nThe string Value = " << string2 << "\n"; cout << "Long Long Int value = " << value << "\n"; cout << "End String = " << End; //remaining string after long long integer }
आउटपुट
The string Value = 777HelloWorld Long Long Int value = 777 End String = HelloWorld The string Value = 565Hello Long Long Int value = 565 End String = Hello
आइए अब एक भिन्न आधार मान के साथ उदाहरण देखें। यहां आधार 16 है। दिए गए आधार की स्ट्रिंग लेने पर, यह दशमलव प्रारूप में प्रिंट होगा।
उदाहरण
#include <iostream> #include<cstdlib> using namespace std; main() { //Define two string char string1[] = "5EHelloWorld"; char string2[] = "125Hello"; char* End; //The end pointer int base = 16; int value; value = strtol(string1, &End, base); cout << "The string Value = " << string1 << "\n"; cout << "Long Long Int value = " << value << "\n"; cout << "End String = " << End << "\n"; //remaining string after long long integer value = strtol(string2, &End, base); cout << "\nThe string Value = " << string2 << "\n"; cout << "Long Long Int value = " << value << "\n"; cout << "End String = " << End; //remaining string after long long integer }
आउटपुट
The string Value = 5EHelloWorld Long Long Int value = 94 End String = HelloWorld The string Value = 125Hello Long Long Int value = 293 End String = Hello
यहां स्ट्रिंग में 5E है, इसलिए इसका मान दशमलव में 94 है, और दूसरी स्ट्रिंग में 125 है। यह दशमलव में 293 है।