sprintf Function sa C

Sprintf Function Sa C



Sa tutorial na ito ng Linux Hint, tatalakayin natin ang paggawa ng sprintf() function sa C programming language. Ang sprintf() ang function ay katulad ng printf() function, ngunit ang pangunahing pagkakaiba ay printf() function ay ginagamit upang ipadala ang string sa stdout output. Ang sprintf() ang function ay nagdidirekta sa output sa isang string variable sa memorya na maaaring magamit para sa iba't ibang layunin kabilang ang karagdagang pagpoproseso ng string o pagsulat sa isang file o stdout.

Syntax ng sprint() Function sa C:

Sa sprintf() function, idineklara namin ang uri na 'int'. Mayroong isang parameter name buffer ng isang uri ng character na isang pointer na ginagamit upang iimbak ang string ng character sa malaking laki ng buffer. Ang argument *format ay ang string na ginagamit upang ilarawan ang output.







Mga Specifier na Ginamit sa sprintf() Function sa C

Ang mga sumusunod ay ang iba't ibang format specifier na ginagamit sa C language para matukoy ang uri ng variable na gusto naming ipakita sa output screen:



Mga Tagatukoy ng Format Paliwanag
%d Kinakatawan ang isang integer na numero.
%f Kinakatawan ang isang nakapirming halaga ng float ng decimal.
%.1f Kinakatawan ang isang halaga sa floating-point na may isang digit na nauuna sa mga decimal
%at Kinakatawan ang isang decimal float value sa scientific notation(exponential).
%g Kinakatawan ang isang floating-point na value sa alinman sa static na decimal o exponential na format batay sa haba ng value.
%c Kinakatawan ang mga variable ng character.
%s Kumakatawan sa string ng character.
%p Tumuturo sa address ng pointer.
%n Walang nai-print.

Ibinalik na Halaga ng sprintf() Function

Ang buong bilang ng mga character na naka-print, maliban sa walang laman na character na ipinasok sa dulo ng string, ay ibabalik kung matagumpay na na-compile. Bilang kahalili, ang isang negatibong halaga ay ibinalik kung sakaling mabigo.



Pagpapatupad Ng sprintf() Function

Gumamit ng C online compiler o Dev C++ compiler para sa pagpapatupad ng sprintf() function sa C programming language.





Halimbawa 01:

Ang sumusunod ay ang pinakasimpleng paglalarawan upang ipakita ang function ng C programming language sprintf() function. Sa kasong ito, sa pamamagitan ng pagpaparami ng 'x' at 'y,' matutukoy natin ang halaga ng 'z'. Upang simulan ang pagsulat ng aming unang programa, kailangan naming isama ang mga file ng header upang maisagawa ang programa. Ang 'stdio.h' ay ginagamit upang makuha ang input mula sa user at ipinapakita ang output pagkatapos ng compilation ng program. Ang header file na 'stdlib.h' ay kumakatawan sa karaniwang library na naglalaman ng mga pamamaraan para sa pag-iimbak ng data, mga aktibidad sa pagkontrol, mga kalkulasyon, at iba pang mga bagay.

Pagkatapos, sinimulan naming ipatupad ang pangunahing() paraan na nagsisilbing simula ng pagpapatupad ng code ng programa sa C. Sa wikang C, ang pangunahing ay isang standardized na keyword o pamamaraan. Ang pangunahing() Ang function ay ang unang paraan na in-charge ng paglulunsad ng execution ng code at pagkatapos ay isara ang program. Ang pangunahing() Ang pamamaraan ay may 'int' na uri ng data sa pagbabalik na palaging nagsisimula sa pagpapatupad mula sa 'pangunahing' function.



Pagkatapos, nagdeklara kami ng variable na pinangalanang 'x' na may uri ng data na 'int' na kilala bilang isang integer. Ang “printf()” pamamaraan ay tinatawag na upang ipakita ang string nang eksakto na nakasulat sa mga panipi (i.e. Ipasok ang Halaga ng x:). Pagkatapos, kailangan nating makuha ang input mula sa user. Kaya, ginamit namin ang “scanf()” paraan. Nasa “scanf()” paraan, ang “%d” specifier ay ginagamit para sa integer type variable na “x” na ipapakita sa screen. Katulad nito, idineklara namin ang variable na 'y' na may uri ng data na 'int' at nakuha ang input mula sa user.

#include
#include

int pangunahing ( )
{
int x ;
printf ( 'Ipasok ang halaga ng x: ' ) ;
scanf ( '%d' , at x ) ;

int Y ;
printf ( 'Ipasok ang halaga ng y: ' ) ;
scanf ( '%d' , at Y ) ;

int Sa = x * Y ;
char buffer [ limampu ] ;

sprintf ( buffer , 'Ang Multiplikasyon ng %d at %d ay: %d' , x , Y , Sa ) ;
printf ( '%s \n ' , buffer ) ;

bumalik 0 ;
}

Nagdeklara kami ng isa pang variable na 'z' na ginamit upang iimbak ang sagot ng multiplikasyon na 'x * y' dito kasama ang uri ng data na 'int'. Pagkatapos ideklara ang lahat ng wastong variable, nagdeklara kami ng uri ng character na 'buffer' na may haba na 50. Higit pa rito, sa pamamagitan ng paggamit ng '%d' specifiers, ang sprintf() Ang pamamaraan ay nagbibigay-daan sa pagbuo ng mga string nang hindi agad ipinapakita ang resulta ng pagpaparami. Pagkatapos, i-print ang string ng character na isinulat sa dobleng panipi. Sa pagtatapos ng programa, ibalik ang 0 sa pangunahing() function na magpapakita ng pagwawakas ng pagpapatupad ng programa

Narito ang output ng ilustrasyon sa itaas. Una, kailangan mong ipasok ang halaga ng 'x' at ang halaga ng 'y'. Ang sprintf() paraan ang gagamitin ng tagasalin upang ipakita ang kinalabasan ng pagpaparami ng dalawang halaga.

Halimbawa 02:

Sa pangalawang paglalarawang ito mula sa aming artikulo, kinakalkula namin ang halaga ng PI sa pamamagitan ng pag-input ng circumference at diameter ng isang bilog. Simulan natin ang pagsusulat ng programa na magkalkula ng halaga ng PI.

Upang simulan ang pagsusulat ng programa, kailangan muna nating isama ang header file. Sa wikang C, ang header file ay may extension na '.h'. Ang 'stdio.h', 'stdlib', at 'math.h' na mga file ng header ay kinakailangan para tumakbo ang aming application. Ang header file na 'stdio.h' ay ginagamit upang ipakita ang input at output ng program gamit ang preprocessor directive na '#include'. Ang pangunahing code para sa aming programa, na nilayon naming isagawa at gawin ang naaangkop na output, ay nakasulat sa pangunahing() katawan.

Sa main() function body, nagdeklara kami ng dalawang variable na 'int', 'circumference' at 'radius,' pati na rin ang variable na 'float' na 'diameter', upang matukoy ang surface area ng bilog. Ang float value ng 'pi' ay na-save sa isang karagdagang variable na tinatawag na 'pi.' Panghuli, ang 'buffer' ng uri ng character ay nagtataglay ng string gamit ang haba na 50. Habang naglalaan ng mga mapagkukunan, kinukuha ng buffer ang mga character na isinulat at ikinakabit ang mga ito sa isang string pagkatapos makuha ang lahat ng mga variable. Ang pangunahing() Sinusubukan ng pamamaraan na unawain ang bawat variable. Kung ang pagpapatupad ay natupad nang tama, ito ay magbabalik ng 0 sa pangunahing() paraan.

#include
#include
#include

int pangunahing ( ) {

int circumference = 44 ;

printf ( 'Ang Halaga ng circumference ay: %d \n ' , circumference ) ;

int radius = 7 ;

printf ( 'Upang Maghanap ng halaga ng Pi. Una, hanapin ang halaga ng diameter. \n ' ) ;

lumutang diameter = ( lumutang ) 7 * dalawa ;

printf ( 'Pag-multiply ng halaga ng Radius sa pamamagitan ng 2 upang makuha ang halaga ng diameter. \n \n '
'Ang halaga ng diameter ay: %f \n ' , diameter ) ;

lumutang pi = circumference / diameter ;

char buffer [ limampu ] ;
sprintf ( buffer , '%f' , pi ) ;

printf ( 'Ang halaga ng Pi ay naka-imbak bilang %s \n ' , buffer ) ;

bumalik 0 ;
}

Kasunod ng pagpapatupad ng nabanggit na snippet ng code, natukoy namin ang halaga ng 'pi' gamit ang circumference at diameter ng bilog.

Konklusyon

Ang sprintf() function ng programming language C ay natugunan sa Linux Hint tutorial na ito. Napag-usapan namin ang tungkol sa syntax ng sprintf() function at ang mga format specifier na ginamit habang nagco-coding sa C para ideklara ang parameter. Pagkatapos, upang matulungan ang gumagamit na maunawaan kung paano ang sprintf() pamamaraan, nagpatupad kami ng dalawang natatanging halimbawa.