La función wcstol() en C/C++ convierte la string ancha dada en un entero largo. Esta función establece un puntero para apuntar al primer carácter después del último carácter válido de la string ancha, si lo hay; de lo contrario, el puntero se establece en nulo. Esta función ignora todos los caracteres de espacio en blanco iniciales hasta que se encuentra el carácter principal que no es un espacio en blanco.
Sintaxis:
long int wcstol( const wchar_t* str, wchar_t** endString, int base )
Parámetros: La función acepta tres parámetros obligatorios que se describen a continuación:
- string : String que comienza con una forma integral.
- endString : la función lo establece en el siguiente carácter de la string después del último carácter válido.
- base: el conjunto de valores válidos para la base es {0, 2, 3, …, 35, 36}.
Valor devuelto: la función devuelve dos valores como se muestra a continuación:
- Si tiene éxito, la función devuelve el número entero convertido como un valor int largo.
- Devuelve cero, si no se pudo realizar una conversión válida.
- Si el valor leído está fuera del rango de valores representables por un int largo, la función devuelve LONG_MAX o LONG_MIN (definido en
), y errno se establece en ERANGE.
Los siguientes programas ilustran la función anterior:
Programa 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
Programa Con diferentes bases :
Programa 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
Publicación traducida automáticamente
Artículo escrito por AmanSrivastava1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA