
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 cadena, de matriz de caracteres a cadena, etc. En este documento se analizará un tipo de conversión similar 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 hace a través de una función en C++ conocida 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 cadena en él.
Implementación de sprintf()
Para entender el funcionamiento de sprintf, vea 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 ejecutarla en la terminal de Ubuntu.
Ejemplo 1
La implementación de sprintf contiene un ejemplo de ejemplo aquí. La función principal estará involucrada en el cálculo del valor de pi, un valor absoluto en matemáticas. Para este propósito, tenemos que usar la biblioteca matemática que contiene todas las características de las operaciones 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++.
Una matriz de caracteres se inicializa con un tamaño fijo en el programa principal. La variable se usará 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 matemática pi.
# Sprint (str, «valor de pi = %f», M_PI);
Esto traerá el valor de PI. El valor de búfer de la función de sprint se utiliza 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 de g++. Este compilador usa un archivo de entrada que tiene el código fuente que ha guardado, un archivo de salida en el que queremos mostrar los resultados usando ‘-o’ en el comando.
ps/expediente
En la ejecución, verá que el valor de pi se muestra a través de la función de sprint.
Ejemplo 2
Esta es otra instancia de la función sprintf(). Se inicializa una variable de carácter para convertir la cadena. Aquí también se utiliza otra variable de tipo entero, a la que se le 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 (búfer, «Mi edad es %d», edad);
Para mostrar el valor convertido, mostraremos el contenido del búfer usando un búfer.
Cuando se ejecuta el archivo, verá que el búfer mostrará el valor inicializado como un valor entero.
Ejemplo 3
Comprobaremos que todos los elementos deben estar presentes en el búfer. En el programa principal, se crean dos variables de diferentes tipos de datos, un entero y un carácter, y se inicializan con el nombre y la edad. Aquí se utiliza una variable de tipo entero para el recuento de caracteres. Aquí escribiremos la combinación de las variables para almacenar variables y cadenas. La combinación se hará de tal forma que en la instrucción cout se escriba una oración junto con las variables ‘%s’ y ‘%d’; estos dos contendrán los valores de las variables enteras y de caracteres inicializadas anteriormente.
De esta forma, tanto la cadena como las variables se escribirán colectivamente en 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 el sprint de la función.
# Count = sprint (buffer, ‘ Soy %s y tengo %d años, nombre, edad);
Después de la función, se muestra el búfer para mostrar el valor escrito en él. Además, la función de conteo ha contado el total de caracteres 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 con el nombre y la edad incrustados dentro de la oración. El contador también ha mostrado el número total de caracteres, incluidos todos los caracteres de las cadenas, tanto las variables como el espacio entre cada palabra.
Ejemplo 4
Este ejemplo funciona con el mismo enfoque que hemos usado para el ejemplo anterior; todas las cadenas en la declaración y las variables se combinan y se escriben en la variable del búfer. Se crea una matriz de búfer de caracteres 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, «la suma de %d y %d es %d», a,b,c);
La función de sprint utilizará las tres variables aleatorias para asignar los valores. Una cosa que debe tenerse en cuenta es que el orden de las variables debe ser el mismo. El valor de la suma se almacenará en la variable del búfer en lugar de imprimirse a través de la salida estándar.
Ejecutar el código; los valores se adjuntan 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 declaración de cadena al momento de ejecutar el sprint, hemos tomado la cadena como entrada y el valor vendrá del usuario. Aquí se presenta 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 un número entero; este valor se usará para incrustarse con la cadena que hemos tomado.
Después de ingresar el valor, este ahora se usará en la función de sprint.
# Sprint (búfer, «%s_%d», original, n);
Tanto la declaración original como el valor entero se concatenarán a través del guión bajo en lugar de tener un espacio entre ellos. Ahora ejecute la instrucció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 por separado o en conjunto. 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.