Funció sprintf en C

Funcio Sprintf En C



En aquest tutorial de Linux Hint, parlarem del funcionament del sprintf() funció en el llenguatge de programació C. El sprintf() funció és similar a la printf() funció, però la diferència principal és printf() La funció s'utilitza per enviar la cadena a la sortida stdout. El sprintf() La funció dirigeix ​​la sortida a una variable de cadena a la memòria que es pot utilitzar per a diversos propòsits, inclòs el processament de la cadena o l'escriptura en un fitxer o stdout.

Sintaxi de la funció sprint() en C:

A la funció sprintf(), hem declarat el tipus 'int'. Hi ha una memòria intermèdia de nom de paràmetre d'un tipus de caràcter que és un punter que s'utilitza per emmagatzemar la cadena de caràcters a la memòria intermèdia de mida gran. L'argument *format és la cadena que s'utilitza per descriure la sortida.







Especificadors utilitzats a la funció sprintf() en C

A continuació es mostren els diferents especificadors de format utilitzats en llenguatge C per determinar el tipus de variable que volem mostrar a la pantalla de sortida:



Especificadors de format Explicació
%d Representa un nombre enter.
%f Representa un valor flotant decimal fix.
%.1f Representa un valor en coma flotant amb un dígit abans dels decimals
% i Representa un valor flotant decimal en notació científica (exponencial).
%g Representa un valor de coma flotant en format decimal estàtic o exponencial en funció de la longitud del valor.
%c Representa variables de caràcter.
%s Representa una cadena de caràcters.
%p Assenyala l'adreça del punter.
%n No imprimeix res.

Valor retornat de la funció sprintf().

El nombre sencer de caràcters impresos, excepte el caràcter buit inserit al final de la cadena, es revertirà si es compila correctament. Alternativament, es retorna un valor negatiu en cas de fallada.



Implementació de la funció sprintf().

Utilitzeu el compilador en línia C o el compilador Dev C++ per a l'execució del fitxer sprintf() funció en llenguatge de programació C.





Exemple 01:

La següent és la il·lustració més senzilla per mostrar la funció del llenguatge de programació C sprintf() funció. En aquest cas, multiplicant 'x' i 'y', podem determinar el valor de 'z'. Per començar a escriure el nostre primer programa, hem d'incloure els fitxers de capçalera per executar el programa. El 'stdio.h' s'utilitza per obtenir l'entrada de l'usuari i mostra la sortida després de la compilació del programa. El fitxer de capçalera 'stdlib.h' significa la biblioteca estàndard que conté mètodes per a l'emmagatzematge de dades, activitats de control, càlculs i altres coses.

Aleshores, vam començar a implementar el principal () mètode que serveix com a començament de la implementació del codi del programa en C. En el llenguatge C, un main és una paraula clau o mètode estandarditzat. El principal () La funció és el primer mètode encarregat de llançar l'execució del codi i després tancar el programa. El principal () El mètode té un tipus de dades de retorn 'int' que sempre inicia l'execució des de la funció 'main'.



Aleshores, hem declarat una variable anomenada 'x' amb un tipus de dades 'int' conegut com a enter. El 'printf()' Es crida al mètode per mostrar la cadena exactament que es va escriure entre cometes (és a dir, introduïu el valor de x:). Aleshores, hem d'obtenir l'entrada de l'usuari. Per tant, hem utilitzat el 'scanf()' mètode. En el 'scanf()' mètode, l'especificador '%d' s'utilitza perquè la variable de tipus enter 'x' es mostri a la pantalla. Igual que és, hem declarat la variable 'y' amb el tipus de dades 'int' i hem rebut l'entrada de l'usuari.

#inclou
#include

int principal ( )
{
int x ;
imprimirf ( 'Introduïu el valor de x:' ) ;
escanf ( '%d' , & x ) ;

int i ;
imprimirf ( 'Introduïu el valor de y:' ) ;
escanf ( '%d' , & i ) ;

int Amb = x * i ;
char tampó [ 50 ] ;

sprintf ( tampó , 'La multiplicació de %d i %d és: %d' , x , i , Amb ) ;
imprimirf ( '%s \n ' , tampó ) ;

tornar 0 ;
}

Hem declarat una altra variable 'z' que s'utilitzava per emmagatzemar la resposta de la multiplicació 'x * y' amb el tipus de dades 'int'. Després de declarar totes les variables vàlides, hem declarat un tipus de caràcter “buffer” de longitud 50. A més, utilitzant especificadors “%d”, el sprintf() El mètode permet la construcció de cadenes sense mostrar instantàniament el resultat de la multiplicació. A continuació, imprimiu la cadena de caràcters que s'ha escrit entre cometes dobles. Al final del programa, torneu el 0 al principal () funció que mostrarà la finalització de l'execució del programa

Aquí teniu la sortida de la il·lustració anterior. Primer, heu d'introduir el valor de 'x' i el valor de 'y'. El sprintf() Aleshores, el traductor utilitzarà el mètode per mostrar el resultat de la multiplicació dels dos valors.

Exemple 02:

En aquesta segona il·lustració del nostre article, hem calculat el valor de PI introduint la circumferència i el diàmetre d'un cercle. Comencem a escriure el programa que calcularà el valor de PI.

Per començar a escriure el programa, primer hem d'incloure el fitxer de capçalera. En llenguatge C, el fitxer de capçalera té l'extensió “.h”. Els fitxers de capçalera 'stdio.h', 'stdlib' i 'math.h' són necessaris perquè la nostra aplicació s'executi. El fitxer de capçalera “stdio.h” s'utilitza per mostrar l'entrada i sortida del programa amb la directiva del preprocessador “#include”. El codi principal del nostre programa, que pretenem executar i produir la sortida adequada, està escrit al cos main().

Al cos de la funció main(), hem declarat dues variables 'int', 'circumferència' i 'radi', així com una variable 'float' que és el 'diàmetre', per determinar l'àrea de superfície del cercle. El valor flotant de 'pi' es va desar en una variable addicional anomenada 'pi'. Finalment, el 'buffer' del caràcter tipus conté la cadena amb una longitud de 50. Mentre assignava recursos, el buffer recuperava els caràcters escrits i els adjuntava a una cadena després d'obtenir totes les variables. El principal () El mètode intenta comprendre cada variable. Si la implementació es porta a terme correctament, retornarà 0 a principal () mètode.

#inclou
#include
#inclou

int principal ( ) {

int circumferència = 44 ;

imprimirf ( 'El valor de la circumferència és: %d \n ' , circumferència ) ;

int radi = 7 ;

imprimirf ( 'Per trobar el valor de Pi. Primer, trobeu el valor del diàmetre. \n ' ) ;

flotar diàmetre = ( flotar ) 7 * 2 ;

imprimirf ( 'Multiplicant el valor del radi per 2 per obtenir el valor del diàmetre. \n \n '
'El valor del diàmetre és: %f \n ' , diàmetre ) ;

flotar Pi = circumferència / diàmetre ;

char tampó [ 50 ] ;
sprintf ( tampó , '%f' , Pi ) ;

imprimirf ( 'El valor de Pi s'emmagatzema com a %s \n ' , tampó ) ;

tornar 0 ;
}

Després de l'execució del fragment de codi esmentat, vam poder determinar el valor de 'pi' mitjançant la circumferència i el diàmetre del cercle.

Conclusió

La funció sprintf() del llenguatge de programació C es va abordar en aquest tutorial de Linux Hint. Hem parlat de la sintaxi de la funció sprintf() i dels especificadors de format que es van utilitzar durant la codificació en C per declarar el paràmetre. Aleshores, per ajudar l'usuari a entendre com el sprintf() funciona, hem implementat dos exemples únics.