當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ wcstol()用法及代碼示例


C /C++中的wcstol()函數將給定的寬字符串轉換為長整數。此函數將指針設置為指向寬字符串的最後一個有效字符之後的第一個字符(如果存在),否則,該指針將設置為null。此函數將忽略所有前導空白字符,直到找到主要的非空白字符為止。

用法:

long int wcstol( const wchar_t* str, wchar_t** endString, int base )



參數:該函數接受三個強製性參數,如下所述:

  • string : 以整數形式開頭的字符串。
  • endString : 通過函數將其設置為字符串中最後一個有效字符之後的下一個字符。
  • base : base的有效值集為{0,2,3,…,35,36}。

返回值:該函數返回兩個值,如下所示:

  • 成功後,函數將轉換後的整數返回為long int值。
  • 如果無法執行有效的轉換,則返回零。
  • 如果讀取的值超出了可表示值的範圍,且該值超出long int範圍,則該函數返回LONG_MAX或LONG_MIN(在),並將errno設置為ERANGE。

以下示例程序旨在說明上述函數:
示例1:

// C++ program to illustrate 
// wcstol() function 
#include <bits/stdc++.h> 
using namespace std; 
  
int main() 
{ 
    // initialize the string 
    wchar_t string[] = L"101GeeksForGeeks"; 
  
    // initialize the base 
    int base = 3; 
    wchar_t* endString; 
  
    // print the long integer value with the end string 
    long value = wcstol(string, &endString, base); 
    wcout << L"String value --> " << string << "\n"; 
    wcout << L"Long integer value --> " << value << "\n"; 
    wcout << L"End String = " << endString << "\n"; 
  
    return 0; 
}
輸出:
String value --> 101GeeksForGeeks
Long integer value --> 10
End String = GeeksForGeeks

程序具有不同的基礎:
示例2:

// C++ program to illustrate 
// wcstol() function 
// with different bases 
#include <bits/stdc++.h> 
using namespace std; 
  
int main() 
{ 
    // initialize the string 
    wchar_t string[] = L"101GFG"; 
  
    // initialize the base 
  
    wchar_t* endString; 
  
    // print the long integer value with the end string 
    // with base 2 
    long value = wcstol(string, &endString, 2); 
    wcout << L"String value --> " << string << "\n"; 
    wcout << L"Long integer value --> " << value << "\n"; 
    wcout << L"End String = " << endString << "\n"; 
  
    // print the long integer value with the end string 
    // with base 5 
    value = wcstol(string, &endString, 5); 
    wcout << L"String value --> " << string << "\n"; 
    wcout << L"Long integer value --> " << value << "\n"; 
    wcout << L"End String = " << endString << "\n"; 
  
    // print the long integer value with the end string 
    // with base 12 
    value = wcstol(string, &endString, 12); 
    wcout << L"String value --> " << string << "\n"; 
    wcout << L"Long integer value --> " << value << "\n"; 
    wcout << L"End String = " << endString << "\n"; 
  
    return 0; 
}
輸出:
String value --> 101GFG
Long integer value --> 5
End String = GFG
String value --> 101GFG
Long integer value --> 26
End String = GFG
String value --> 101GFG
Long integer value --> 145
End String = GFG


相關用法


注:本文由純淨天空篩選整理自AmanSrivastava1大神的英文原創作品 wcstol() function in C/C++。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。