stroll() ফাংশনটি স্ট্রিংকে দীর্ঘ পূর্ণসংখ্যাতে রূপান্তর করতে ব্যবহৃত হয়। এটি পয়েন্টারকে শেষের পরে প্রথম অক্ষরের দিকে নির্দেশ করার জন্য সেট করে। সিনট্যাক্স নিচের মত। এই ফাংশনটি 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।