C ++ sprintf

C ++ sprintf

En el lenguaje de programación C ++, encontrará muchas conversiones y copiará datos de un archivo o una variable a otra, como la conversión de int a la cadena, matriz de caracteres a cadena, etc. Se discutirá un tipo similar de conversión en el que los caracteres de las cadenas de formato se escriben en el búfer. Y los valores se obtendrán a través de esa variable de búfer. Esto se realiza a través de una función en C ++ conocido como Sprints ().

Sintaxis de sprintf ()

# int sprintf (char* buffer, const char* variable);

Una variable es un valor de entrada que queremos almacenar en el búfer. La función sprintf, cuando se ejecuta, devuelve el número de caracteres que están presentes en el búfer. De lo contrario, se devuelve un valor negativo. El tamaño del búfer se declara en el momento de la inicialización; El tamaño debe ser lo suficientemente grande como para almacenar una cuerda en él.

Implementación de sprintf ()

Para comprender el funcionamiento de SPRINTF, consulte los siguientes ejemplos que contienen diferentes métodos para usar esta función en el código fuente de C ++ para que el compilador pueda ejecutarlo en el terminal de Ubuntu.

Ejemplo 1

La implementación del sprintf contiene un ejemplo de muestra aquí. La función principal estará involucrada en calcular el valor de PI, un valor absoluto en matemáticas. Para este propósito, tenemos que usar la biblioteca de matemáticas que contiene todas las funciones de las operaciones de matemáticas. La segunda biblioteca es stdio.H, que también es un archivo de encabezado esencial que se requiere para ejecutar cualquier programa C ++.

#incluir

Una matriz de caracteres se inicializa con un tamaño fijo en el programa principal. La variable se utilizará en la función sprint () como parámetro. Como Sprint se usa para copiar o escribir la cadena formateada en el búfer de la cadena de caracteres, dentro de la función, usaremos la matriz de objetos de la variable de caracteres y la calculadora de Matemáticas PI.

# Sprint (str, "valor de pi = %f", m_pi);

Esto traerá el valor de Pi. El valor del búfer de la función sprint se usa para mostrar el valor. Como en este ejemplo, se usa STR.

El código es compilado y ejecutado por un compilador de C ++, que es un compilador G ++. Este compilador utiliza un archivo de entrada que tiene el código fuente que ha guardado, un archivo de salida en el que queremos mostrar los resultados utilizando '-o' en el comando.

archivo de archivo $ g ++ -o.C
ps ./archivo

En la ejecución, verá que el valor de Pi se muestra a través de la función Sprint.

Ejemplo 2

Esta es otra instancia de la función sprintf (). Se inicializa una variable de caracteres para convertir la cadena. Aquí también se usa otra variable de tipo entero, a lo que se asigna un valor entero. Ambas variables se utilizarán en el parámetro de la función Sprint. La función SPRINTF imprimirá mi oración de edad, y la variable de edad se convertirá en la variable de búfer.

# Sprintf (buffer, "Mi edad es %d", edad);

Para mostrar el valor convertido, mostraremos el contenido del búfer usando un búfer.

Cuando se ejecute el archivo, verá que el búfer mostrará el valor inicializado como un valor entero.

Ejemplo 3

Verificaremos que todos los elementos estén presentes en el búfer. En el programa principal, se crean dos variables de diferentes tipos de datos, un entero y un carácter, se crean y se inicializan por el nombre y la edad. Aquí se usa una variable de tipo entero para el propósito de contar caracteres. Aquí escribiremos la combinación de las variables a las variables de amortiguación y las cuerdas. La combinación se realizará de tal manera que una oración se escriba en la declaración Cout junto con variables '%s' y '%d'; Estos dos contendrán los valores de las variables enteras y de caracteres inicializadas anteriormente.

De esta manera, tanto la cadena como las variables se escribirán colectivamente a la variable del búfer. Ahora la función de conteo se usará con la llamada de función. Almacenará el valor que se devolverá desde la función sprint.

# Count = sprint (buffer, 'soy %s y tengo un %de años, nombre, edad);

Después de la función, se muestra el búfer para mostrar el valor escrito en ella. Además, la función de conteo ha contado los caracteres totales que se formarán cuando se combinen las cadenas y ambas variables. Ahora ejecutaremos el código fuente anterior.

Verá que la función de sprint ha mostrado el mensaje que tiene el nombre y la edad incrustada dentro de la oración. El mostrador también ha mostrado el número total de caracteres, incluidos todos los caracteres de las cuerdas, tanto las variables como el espacio entre cada palabra.

Ejemplo 4

Este ejemplo funciona en el mismo enfoque que hemos utilizado para el ejemplo anterior; Todas las cadenas en la declaración y las variables se combinan con se escriben en la variable de amortiguación. Se crea una matriz de búfer de personajes, y el tamaño se menciona aquí. Dos variables de tipo entero almacenarán los valores, y una tercera variable calculará la suma de los valores presentes en las dos variables. Ahora incrustaremos todas las variables en la cadena.

# Sprint (búfer, "suma de %d y %d es %d", a, b, c);

La función sprint usará las tres variables aleatorias para asignar los valores. Una cosa que debe tener en cuenta es que el orden de las variables debe ser el mismo. El valor de la suma se almacenará en la variable de búfer en lugar de imprimir a través de Stdout.

Ejecutar el código; Los valores se unen con la cadena a través de Sprint.

Ejemplo 5

El ejemplo trata sobre la participación del usuario. En lugar de tomar las variables como entrada y la instrucción de cadena al momento de ejecutar el sprint, hemos tomado la cadena como una entrada, y el valor vendrá del usuario. Aquí se introduce una matriz de caracteres de cadena original que contiene una cadena. Mientras que un búfer también se inicializa con el tamaño específico, el sistema le pedirá al usuario que ingrese el valor en entero; Este valor se utilizará para estar integrado con la cadena que hemos tomado.

Después de ingresar el valor, esto se usará ahora en la función Sprint.

# Sprint (búfer, "%s_%d", original, n);

Tanto la declaración original como el valor entero se concatenarán a través del subrayador en lugar de tener un espacio entre ellos. Ahora ejecute la declaración para ver los resultados.

Después de ingresar el valor por parte del usuario, la declaración se mostrará como la combinación de una cadena y un valor entero.

Conclusión

El método sprint () almacena la cadena formateada en el búfer. Todos los valores se escriben en el búfer, ya sea por separado o colectivamente,. Todos estos casos se explican en este artículo a través de ejemplos básicos implementados en C++. La verificación del valor del búfer se puede obtener a través de la función de contador que cuenta los caracteres de la cadena. Esto se puede aplicar a cualquier programa de sprint.