Función de robo en C ++

Función de robo en C ++

C ++ es uno de los lenguajes de programación más populares y más antiguos utilizados para el desarrollo de aplicaciones de alto rendimiento. Se utiliza entre programadores y desarrolladores novatos altamente expertos. Se utiliza principalmente en el desarrollo de juegos y es una opción ideal para desarrollar sistemas operativos. Al escribir código en el idioma C ++, puede encontrar datos de conversión de un tipo a otro. En este artículo, aprenderá a convertir una cadena en un entero largo. Es bastante difícil convertir una cadena en cualquier otro formato. Sin embargo, el lenguaje de programación C ++ proporciona una forma rápida y eficiente de convertir las cadenas en enteros.

Función de robar en C++

El stol es una función incorporada C ++ proporcionada en la biblioteca STD. Convierte las cadenas en números enteros largos. Convierte el contenido de cadena en un número entero de la base especificada y devuelve un valor entero largo. Se necesitan tres parámetros, uno es la cadena de entrada, la segunda es el parámetro del objeto y el tercero es la base numérica. La sintaxis de la función STOL se da a continuación, eche un vistazo:

La función stol toma tres parámetros: input_string, tamaño y base. El "input_string" representa la cadena de entrada que debe convertirse en un número entero largo.

El parámetro "tamaño" representa el objeto de tipo size_t que lleva la siguiente posición de caracteres en la cadena de entrada después del valor numérico. Puede ser un puntero nulo si no es necesario usar.

El tercer parámetro, el parámetro "base" representa la base en la que la cadena debe interpretarse. Por ejemplo, si se da la base "2", la cadena se interpretará como el número de Integer Base 2. El valor predeterminado del parámetro base es 10 y si se proporciona 0, el valor base se determinará mediante el formato en la secuencia. La función STOL devuelve el número entero largo que representa el valor int de una cadena dada.

Ahora, exploremos algunos ejemplos para comprender cómo funciona la función Stol en C++.

Ejemplo 1

En este ejemplo, proporcionaremos cadenas decimales y hexadecimales para verificar cómo la función STOL los convierte en números enteros decimales y hexadecimales.

El "DEC = 123456789" es una cadena decimal y se convierte en un entero largo usando la función stol stol (dec y tamaño). Tenga en cuenta que la base no se proporciona en la función como un parámetro de entrada que, como resultado, utiliza la base predeterminada 10 para convertir la cadena en un número decimal. Sin embargo, para convertir la cadena de un número hexadecimal a un número decimal, la base 16 se proporciona como el parámetro de entrada Stol (hex, nullptr, 16). Como sabemos, la base 16 representa un número hexadecimal.

#incluir
#incluir
#incluir
int main ()

std :: string dec = "123456789";
std :: string hex = "a2bf3c";
std :: string :: size_type size;
long lidec = std :: stol (dec, y tamaño);
long lihex = std :: stol (hex, nullptr, 16);
std :: cout << "Input decimal string "<std :: cout << "Input hexadecimal string "<regresar 0;

Aquí está la siguiente salida. Tenga en cuenta que la cadena decimal "123456789" se convirtió en "123456789" decimal largo entero largo. Mientras que la cadena hexadecimal "A2BF3C" se convirtió en número hexadecimal "10665788". Estos son los pasos requeridos que puede seguir para aprender cómo la función de STOL realiza la conversión:

(A2BF3C) ₁₆ = (10 × 16⁵) + (2 × 16⁴) + (11 × 16³) + (15 × 16²) + (3 × 16¹) + (12 × 16⁰) = (10665788) ₁₀

Ejemplo # 2

En este ejemplo, convertiremos un número binario utilizando la función stol. Veamos el código a continuación y comprendamos el funcionamiento del código. El "1010110110" se proporciona como la cadena de entrada y la base 2 se proporciona como el parámetro de la base de entrada Stol (bin, & size, 2), que representa el número en formato binario. La función STOL convertirá el número binario en un número decimal siguiendo estos pasos:

(1010110110) ₂ = (1 × 2⁹) + (0 × 2⁸) + (1 × 2⁷) + (0 × 2⁶) + (1 × 2⁵) + (1 × 2⁴) + (0 × 2³) + (1 × 2²) + (1 × 2¹) + (0 × 2⁰) = (694) ₁₀
#incluir
#incluir
#incluir
int main ()

std :: string bin = "1010110110";
std :: string :: size_type size;
Long libin = std :: stol (contenedor y tamaño, 2);
std :: cout << "Input binary string "<regresar 0;

Como puede ver, la función STOL devolvió el mismo resultado que el proceso de conversión binario general a decimal.

Ejemplo # 3

En este ejemplo, vamos a ver qué sucede si probamos la función STOL con una entrada no válida. Se proporcionará una cadena de múltiples caracteres a la función stol y se proporcionará 0 como el valor base para que la función determine la base de la cadena automáticamente. Aquí está el código:

Se proporciona un conjunto de caracteres como una cadena de entrada que no está determinada por ningún valor base, i.mi., 10, 16, 2, etc. Entonces la función devolverá un valor de error.

#incluir
#incluir
#incluir
int main ()

std :: string chr = "abcdefgh";
std :: string :: size_type size;
long str = std :: stol (chr, nullptr, 0);
std :: cout << "Input character string "<regresar 0;

Vea la salida a continuación. Tenga en cuenta que el compilador ha planteado una excepción de "inválido_argumento" ya que la función no atiende a cadenas que no se pueden determinar con ningún valor base.

Ejemplo # 4

En este ejemplo, proporcionaremos una combinación de entrada válida e inválida para ver el resultado de la función stol ().

La cadena de entrada es una combinación de caracteres válidos e inválidos, "123XF25". El ISG "0" proporcionado como una base de entrada para que la función determine la base de la cadena de entrada automáticamente en función del tipo de caracteres.

#incluir
#incluir
#incluir
int main ()

std :: string chr = "123xf25";
std :: string :: size_type size;
long str = std :: stol (chr, nullptr, 0);
std :: cout << "Input string "<regresar 0;

Aquí está la salida que muestra el funcionamiento de la función STOL con una combinación de entrada válida e inválida:

Tenga en cuenta que la función convirtió el "123" en el número decimal "123" y descartó el resto de la cadena ya que recibió una entrada no válida "X". La cadena después del personaje "X" no se convierte por la función STOL, que devuelve solo los primeros caracteres de la cadena como mucho intent.

Conclusión

En esta publicación, exploramos la función STOL del lenguaje de programación C ++. Con la ayuda de algunos ejemplos útiles y simples, aprendimos cómo funciona la función Stol con diferentes tipos de entradas. La función STOL toma tres parámetros, la cadena de entrada que se va a convertir, un parámetro de tamaño que representa la posición de la función en la cadena y el valor base que representa la base de la cadena de entrada. Devuelve el valor int -into de la cadena de entrada.