কম্পিউটার টিউটোরিয়াল

সি/সি++-এ wcstoll() ফাংশন: واইড ক্যারেক্টার স্ট্রিং থেকে long long কনভার্সন

wcstoll() (Wide Character String to Long Long) ফাংশনটি একটি واইড ক্যারেক্টার স্ট্রিং (wchar_t*) কে long long ইন্টিজারে কনভার্ট করে। এটি <wchar.h> (C) বা <cwchar> (C++) হেডারে থাকে।

ফাংশন সিগনেচার

long long wcstoll(const wchar_t *str, wchar_t **str_end, int base);

প্যারামিটার

  • str: কনভার্ট করার واইড স্ট্রিংয়ের শুরু
  • str_end: আউটপুট প্যারামিটার — কনভার্সন শেষ হয়ে যাওয়ার পরের ক্যারেক্টারকে পয়েন্ট করে (যদি NULL না হয়)
  • base: বেস (২ থেকে ৩৬, বা ০ = অটো-ডিটেক্ট: ০x=হেক্স, ০=অক্টাল, অন্যথায় ডেসিমাল)

রিটার্ন ভ্যালু

  • কনভার্ট হওয়া long long মান
  • যদি কনভার্সন না হয় (স্ট্রিং নম্বর দিয়ে শুরু না হয়) তবে ০ রিটার্ন করে
  • ওভারফ্লো হলে LLONG_MAX বা LLONG_MIN রিটার্ন করে এবং errno = ERANGE সেট করে

উদাহরণ ১: বেস ১০ (ডেসিমাল)

#include <iostream>
#include <cwchar>
using namespace std;

int main() {
    wchar_t string1[] = L"777HelloWorld";
    wchar_t string2[] = L"565Hello";
    wchar_t *end;
    int base = 10;
    long long value;

    value = wcstoll(string1, &end, base);
    wcout << L"The string Value = " << string1 << L"\n";
    wcout << L"Long Long Int value = " << value << L"\n";
    wcout << L"End String = " << end << L"\n";

    value = wcstoll(string2, &end, base);
    wcout << L"\nThe string Value = " << string2 << L"\n";
    wcout << L"Long Long Int value = " << value << L"\n";
    wcout << L"End String = " << end;
    return 0;
}

আউটপুট

The string Value = 777HelloWorld
Long Long Int value = 777
End String = HelloWorld

The string Value = 565Hello
Long Long Int value = 565
End String = Hello

উদাহরণ ২: বেস ১৬ (হেক্সাডেসিমাল)

#include <iostream>
#include <cwchar>
using namespace std;

int main() {
    wchar_t string1[] = L"5EHelloWorld";  // 5E hex = 94 dec
    wchar_t string2[] = L"125Hello";      // 125 hex = 293 dec
    wchar_t *end;
    int base = 16;
    long long value;

    value = wcstoll(string1, &end, base);
    wcout << L"The string Value = " << string1 << L"\n";
    wcout << L"Long Long Int value = " << value << L"\n";
    wcout << L"End String = " << end << L"\n";

    value = wcstoll(string2, &end, base);
    wcout << L"\nThe string Value = " << string2 << L"\n";
    wcout << L"Long Long Int value = " << value << L"\n";
    wcout << L"End String = " << end;
    return 0;
}

আউটপুট

The string Value = 5EHelloWorld
Long Long Int value = 94
End String = HelloWorld

The string Value = 125Hello
Long Long Int value = 293
End String = Hello

সম্পর্কিত ফাংশন

  • wcstol — long রিটার্ন করে
  • wcstoull — unsigned long long রিটার্ন করে
  • strtoll — নারো ক্যারেক্টার স্ট্রিং (char*) এর জন্য
  1. C/C++-তে rand() এবং srand() ফাংশন

  2. C/C++-তে putwchar() ফাংশন

  3. C/C++-তে mbsrtowcs() ফাংশন

  4. C/C++-তে system() ফাংশন: কম্যান্ড এক্সিকিউশন