La función wcstoll() en C/C++ convierte una string de caracteres anchos en un entero largo. Establece el puntero para señalar el primer carácter después del último carácter.
Sintaxis:
long long wcstoll( const wchar_t* str, wchar_t** str_end, int base )
Parámetro: La función acepta tres parámetros obligatorios que se describen a continuación:
- str: especifica una string ancha que comienza con el número entero .
- str_end: la función establece el valor de str_end en el siguiente carácter, después del último carácter válido, si lo hay, o apuntará a NULL.
- base: especifica la base, los valores de Base pueden ser de {0, 2, 3, …, 35, 36}.
Valor devuelto: la función devuelve el entero largo largo convertido. Devuelve 0, si el carácter apunta a NULL.
Los siguientes programas ilustran la función anterior:
Programa 1:
// C++ program to illustrate // the function wcstoll() #include <bits/stdc++.h> using namespace std; int main() { // wide-character type array string starting // with integral 'L' wchar_t string1[] = L"888geekforgeeks"; wchar_t string2[] = L"999gfg"; // End pointer will point to the characters // after integer, according to the base wchar_t* End; // Initializing base int b = 10; int value; value = wcstoll(string1, &End, b); value = wcstoll(string2, &End, b); // prints the whole input string wcout << "String Value = " << string1 << "\n"; wcout << "Long Long Int value = " << value << "\n"; // prints the end string after the integer wcout << "End String = " << End << "\n"; wcout << "String Value = " << string2 << "\n"; wcout << "Long Long Int Value = " << value << "\n"; wcout << "End String = " << End << "\n"; return 0; }
String Value = 888geekforgeeks Long Long Int value = 999 End String = gfg String Value = 999gfg Long Long Int Value = 999 End String = gfg
Nota: Los valores de las bases pueden ser {0, 2, 3, …, 35, 36}. Un conjunto de dígitos válidos para base 2 es {0, 1}, para base 3 es {0, 1, 2} y así sucesivamente. Para bases a partir de 11 a 36, los dígitos válidos incluyen alfabetos. El conjunto de dígitos válidos para base 11 es {0, 1, …, 9, A, a}, para base 12 es {0, 1, …, 9, A, a, B, b} y así sucesivamente.
Programa 2: función con diferentes bases
// C++ program to illustrate the function wcstoll() #include <bits/stdc++.h> using namespace std; int main() { // End pointer, will point to the characters // after integer, according to the base wchar_t* End; // wide-character type array string wchar_t string[] = L"1356geekforgeeks"; // Prints the long long integer provided with base 5 wcout << "Long Long Int with base5 = " << wcstoll(string, &End, 5) << "\n"; wcout << "End String = " << End << "\n"; // Prints the long long integer provided with base 12 wcout << "Long Long Int with base12 = " << wcstoll(string, &End, 12) << "\n"; wcout << "End String = " << End << "\n"; // Prints the long long integer provided with base 36 wcout << "Long Long Int with base36 = " << wcstoll(string, &End, 36) << "\n"; wcout << "End String = " << End << "\n"; return 0; }
Long Long Int with base5 = 8 End String = 56geekforgeeks Long Long Int with base12 = 2226 End String = geekforgeeks Long Long Int with base36 = 9223372036854775807 End String =
Publicación traducida automáticamente
Artículo escrito por AmanSrivastava1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA