Funkcia sprintf v C

Funkcia Sprintf V C



V tomto návode Linux Hint budeme diskutovať o fungovaní sprintf() funkciu v programovacom jazyku C. The sprintf() funkcia je podobná ako printf() funkciu, ale hlavný rozdiel je printf() funkcia sa používa na odoslanie reťazca na výstup stdout. The sprintf() funkcia nasmeruje výstup do reťazcovej premennej v pamäti, ktorú možno použiť na rôzne účely vrátane ďalšieho spracovania reťazcov alebo zápisu do súboru alebo stdout.

Syntax funkcie sprint() v C:

Vo funkcii sprintf() sme deklarovali typ „int“. Existuje vyrovnávacia pamäť názvu parametra typu znak, ktorý je ukazovateľom používaným na uloženie znakového reťazca vo veľkej vyrovnávacej pamäti. Argument *formát je reťazec, ktorý sa používa na popis výstupu.







Špecifikátory používané vo funkcii sprintf() v jazyku C

Nasledujú rôzne špecifikátory formátu používané v jazyku C na určenie typu premennej, ktorú chceme zobraziť na výstupnej obrazovke:



Špecifikátory formátu Vysvetlenie
%d Predstavuje celé číslo.
%f Predstavuje pevnú desatinnú hodnotu s pohyblivou desatinnou čiarkou.
%.1f Predstavuje hodnotu v pohyblivej rádovej čiarke s jednou číslicou pred desatinnými miestami
% a Predstavuje desatinnú hodnotu s pohyblivou desatinnou čiarkou vo vedeckej notácii (exponenciálna).
%g Predstavuje hodnotu s pohyblivou rádovou čiarkou buď v statickom desiatkovom alebo exponenciálnom formáte na základe dĺžky hodnoty.
%c Predstavuje znakové premenné.
%s Predstavuje reťazec znakov.
%p Ukazuje na adresu ukazovateľa.
%n Netlačí nič.

Vrátená hodnota funkcie sprintf().

Celý počet vytlačených znakov okrem prázdneho znaku vloženého na koniec reťazca sa po úspešnej kompilácii vráti späť. Prípadne sa v prípade zlyhania vráti záporná hodnota.



Implementácia funkcie sprintf().

Na spustenie súboru použite online kompilátor C alebo kompilátor Dev C++ sprintf() funkciu v programovacom jazyku C.





Príklad 01:

Nasleduje najjednoduchšia ilustrácia zobrazujúca funkciu programovacieho jazyka C sprintf() funkciu. V tomto prípade vynásobením „x“ a „y“ môžeme určiť hodnotu „z“. Aby sme mohli začať písať náš prvý program, musíme zahrnúť hlavičkové súbory na spustenie programu. „stdio.h“ sa používa na získanie vstupu od používateľa a zobrazuje výstup po kompilácii programu. Hlavičkový súbor „stdlib.h“ predstavuje štandardnú knižnicu, ktorá obsahuje metódy na ukladanie údajov, riadiace činnosti, výpočty a ďalšie veci.

Potom sme začali implementovať hlavné() metóda, ktorá slúži ako začiatok implementácie kódu programu v C. V jazyku C je main štandardizované kľúčové slovo alebo metóda. The hlavné() je prvá metóda zodpovedná za spustenie vykonávania kódu a následné vypnutie programu. The hlavné() metóda má návratový dátový typ „int“, ktorý vždy iniciuje vykonávanie z funkcie „main“.



Potom sme deklarovali premennú s názvom „x“ s typom údajov „int“ známym ako celé číslo. The 'printf()' metóda sa volá na zobrazenie reťazca presne tak, ako bol napísaný v úvodzovkách (t. j. zadajte hodnotu x:). Potom musíme získať vstup od používateľa. Takže sme použili 'skenovať ()' metóda. V 'skenovať ()' Pri metóde „%d“ sa pre premennú typu „x“ na obrazovke používa špecifikátor „%d“. Rovnako ako to je, deklarovali sme premennú „y“ s dátovým typom „int“ a dostali sme vstup od používateľa.

#include
#include

int hlavné ( )
{
int X ;
printf ( 'Zadajte hodnotu x: ' ) ;
scanf ( '%d' , & X ) ;

int Y ;
printf ( 'Zadajte hodnotu y: ' ) ;
scanf ( '%d' , & Y ) ;

int s = X * Y ;
char vyrovnávacej pamäte [ päťdesiat ] ;

sprintf ( vyrovnávacej pamäte , 'Násobenie %d a %d je: %d' , X , Y , s ) ;
printf ( '%s \n ' , vyrovnávacej pamäte ) ;

vrátiť 0 ;
}

Deklarovali sme ďalšiu premennú „z“, ktorá bola použitá na uloženie odpovede na násobenie „x * y“ s dátovým typom „int“. Po deklarovaní všetkých platných premenných sme deklarovali typ znaku „buffer“ s dĺžkou 50. Okrem toho použitím špecifikátorov „%d“ sprintf() metóda umožňuje konštrukciu reťazcov bez okamžitého zobrazenia výsledku násobenia. Potom vytlačte reťazec znakov, ktorý bol napísaný v úvodzovkách. Na konci programu vráťte 0 na hlavné() funkcia, ktorá ukáže ukončenie vykonávania programu

Tu je výstup z vyššie uvedenej ilustrácie. Najprv musíte zadať hodnotu „x“ a hodnotu „y“. The sprintf() metódu potom použije prekladateľ na zobrazenie výsledku vynásobenia týchto dvoch hodnôt.

Príklad 02:

V tejto druhej ilustrácii z nášho článku sme vypočítali hodnotu PI zadaním obvodu a priemeru kruhu. Začnime písať program, ktorý vypočíta hodnotu PI.

Aby sme mohli začať písať program, musíme najprv zahrnúť hlavičkový súbor. V jazyku C má hlavičkový súbor príponu „.h“. Na spustenie našej aplikácie sú potrebné hlavičkové súbory „stdio.h“, „stdlib“ a „math.h“. Hlavičkový súbor „stdio.h“ sa používa na zobrazenie vstupu a výstupu programu s direktívou preprocesora „#include“. Primárny kód pre náš program, ktorý máme v úmysle spustiť a vytvoriť príslušný výstup, je napísaný v tele main().

V tele funkcie main() sme deklarovali dve premenné „int“, „obvod“ a „polomer“, ako aj premennú „float“, ktorá je „priemerom“, na určenie plochy povrchu kruhu. Hodnota float „pi“ sa potom uložila do ďalšej premennej s názvom „pi“. Nakoniec, „buffer“ znaku typu drží reťazec s dĺžkou 50. Počas prideľovania zdrojov vyrovnávacia pamäť získavala znaky, ktoré boli zapísané a pripájala ich k reťazcu po získaní všetkých premenných. The hlavné() metóda sa snaží pochopiť každú premennú. Ak je implementácia vykonaná správne, vráti 0 na hlavné() metóda.

#include
#include
#include

int hlavné ( ) {

int obvod = 44 ;

printf ( 'Hodnota obvodu je: %d \n ' , obvod ) ;

int polomer = 7 ;

printf ( 'Ak chcete nájsť hodnotu Pi. Najprv nájdite hodnotu priemeru.' \n ' ) ;

plavák priemer = ( plavák ) 7 * dva ;

printf ( „Vynásobením hodnoty polomeru 2 získate hodnotu priemeru. \n \n '
'Hodnota priemeru je: %f \n ' , priemer ) ;

plavák pi = obvod / priemer ;

char vyrovnávacej pamäte [ päťdesiat ] ;
sprintf ( vyrovnávacej pamäte , '%f' , pi ) ;

printf ( 'Hodnota Pi je uložená ako %s \n ' , vyrovnávacej pamäte ) ;

vrátiť 0 ;
}

Po vykonaní vyššie uvedeného útržku kódu sme boli schopní určiť hodnotu „pi“ pomocou obvodu a priemeru kruhu.

Záver

Funkciou sprintf() programovacieho jazyka C sa zaoberal tento tutoriál Linux Hint. Hovorili sme o syntaxi funkcie sprintf() a špecifikátoroch formátu, ktoré boli použité pri kódovaní v C na deklarovanie parametra. Potom, aby ste pomohli používateľovi pochopiť, ako sprintf() metóda funguje, implementovali sme dva jedinečné príklady.