sprintf funkcija C

Sprintf Funkcija C



Šioje „Linux Hint“ mokymo programoje aptarsime, kaip veikia sprintf () funkcija C programavimo kalba. The sprintf () funkcija yra panaši į printf() funkcija, tačiau pagrindinis skirtumas yra printf() funkcija naudojama norint siųsti eilutę į stdout išvestį. The sprintf () funkcija nukreipia išvestį į atmintyje esantį eilutės kintamąjį, kuris gali būti naudojamas įvairiems tikslams, įskaitant tolesnį eilučių apdorojimą arba įrašymą į failą arba stdout.

Funkcijos sprint() sintaksė C:

Funkcijoje sprintf () mes paskelbėme tipą „int“. Yra tipo simbolio parametro pavadinimo buferis, kuris yra žymeklis, naudojamas simbolių eilutei saugoti didelio dydžio buferyje. Argumentas *formatas yra eilutė, naudojama apibūdinti išvestį.







Specifikacijos, naudojamos sprintf() funkcijoje C

Toliau pateikiamos skirtingos formato specifikacijos, naudojamos C kalba siekiant nustatyti kintamojo tipą, kurį norime rodyti išvesties ekrane:



Formato specifikacijos Paaiškinimas
%d Reiškia sveikąjį skaičių.
%f Nurodo fiksuotą dešimtainę slankiąją vertę.
%.1f Reiškia reikšmę slankiojo kablelio pavidalu su vienu skaitmeniu prieš kablelio skaičių
%ir Nurodo dešimtainę slankiąją reikšmę moksliniu žymėjimu (eksponentiniu).
%g Nurodo slankiojo kablelio reikšmę statiniu dešimtainiu arba eksponentinį formatą, atsižvelgiant į vertės ilgį.
%c Reiškia simbolių kintamuosius.
%s Reiškia simbolių eilutę.
%p Nurodo į žymeklio adresą.
%n Nieko nespausdina.

Grąžinta funkcijos sprintf() reikšmė

Visas išspausdintų simbolių skaičius, išskyrus tuščią simbolį, įterptą eilutės pabaigoje, grąžinamas, jei jis sėkmingai sukompiliuotas. Arba gedimo atveju grąžinama neigiama reikšmė.



Funkcijos sprintf() įgyvendinimas

Norėdami vykdyti, naudokite C internetinį kompiliatorių arba Dev C++ kompiliatorių sprintf () funkcija C programavimo kalba.





01 pavyzdys:

Toliau pateikiama paprasčiausia iliustracija, rodanti C programavimo kalbos funkciją sprintf () funkcija. Šiuo atveju, padauginę „x“ ir „y“, galime nustatyti „z“ reikšmę. Norėdami pradėti rašyti savo pirmąją programą, turime įtraukti antraštės failus, kad galėtume vykdyti programą. „stdio.h“ naudojamas gauti įvestį iš vartotojo ir rodo išvestį po programos sudarymo. Antraštės failas „stdlib.h“ reiškia standartinę biblioteką, kurioje yra duomenų saugojimo, valdymo veiklos, skaičiavimų ir kitų dalykų metodai.

Tada mes pradėjome įgyvendinti pagrindinis () metodas, kuris tarnauja kaip programos kodo diegimo C kalba pradžia. C kalboje pagrindinis yra standartizuotas raktinis žodis arba metodas. The pagrindinis () funkcija yra pirmasis būdas paleisti kodo vykdymą ir tada išjungti programą. The pagrindinis () metodas turi „int“ grąžinimo duomenų tipą, kuris visada inicijuoja vykdymą iš „pagrindinės“ funkcijos.



Tada mes paskelbėme kintamąjį pavadinimu „x“ su duomenų tipu „int“, žinomu kaip sveikasis skaičius. The 'printf()' metodas iškviečiamas, kad būtų rodoma tiksliai ta eilutė, kuri buvo parašyta kabutėse (t. y. įveskite x reikšmę:). Tada turime gauti vartotojo įvestį. Taigi, mes panaudojome „scanf ()“ metodas. Viduje „scanf ()“ Metodą, „%d“ specifikacija naudojama sveikojo skaičiaus tipo kintamajam „x“, kad būtų rodomas ekrane. Kaip ir yra, mes paskelbėme kintamąjį „y“ su duomenų tipu „int“ ir gavome vartotojo įvestį.

#include
#include

tarpt pagrindinis ( )
{
tarpt x ;
printf ( 'Įveskite x reikšmę:' ) ;
scanf ( „%d“ , & x ) ;

tarpt Y ;
printf ( 'Įveskite y reikšmę:' ) ;
scanf ( „%d“ , & Y ) ;

tarpt Su = x * Y ;
char buferis [ penkiasdešimt ] ;

sprintf ( buferis , '%d ir %d daugyba yra: %d' , x , Y , Su ) ;
printf ( '%s \n , buferis ) ;

grąžinti 0 ;
}

Deklaravome kitą kintamąjį „z“, kuris buvo naudojamas daugybos „x * y“ atsakymui išsaugoti jame duomenų tipu „int“. Deklaravus visus galiojančius kintamuosius, mes paskelbėme 50 ilgio simbolių tipą „buferis“. Be to, naudojant „%d“ specifikacijas, sprintf () metodas leidžia sudaryti eilutes, akimirksniu neparodant daugybos rezultato. Tada atspausdinkite simbolių eilutę, kuri buvo parašyta dvigubomis kabutėmis. Programos pabaigoje grąžinkite 0 į pagrindinis () funkcija, kuri parodys programos vykdymo pabaigą

Čia yra aukščiau pateiktos iliustracijos išvestis. Pirmiausia turite įvesti „x“ reikšmę ir „y“ reikšmę. The sprintf () Tada vertėjas naudotų metodą, kad parodytų dviejų reikšmių padauginimo rezultatą.

02 pavyzdys:

Šioje antroje mūsų straipsnio iliustracijoje mes apskaičiavome PI vertę įvesdami apskritimo perimetrą ir skersmenį. Pradėkime rašyti programą, kuri apskaičiuos PI reikšmę.

Norėdami pradėti rašyti programą, pirmiausia turime įtraukti antraštės failą. C kalba antraštės failo plėtinys yra „.h“. „stdio.h“, „stdlib“ ir „math.h“ antraščių failai reikalingi, kad programa veiktų. Antraštės failas „stdio.h“ naudojamas programos įvesties ir išvesties rodmenims su išankstinio procesoriaus direktyva „#include“. Pagrindinis mūsų programos kodas, kurį ketiname vykdyti ir sukurti atitinkamą išvestį, yra parašytas main() turinyje.

Funkcijos pagrindinėje () dalyje paskelbėme du „int“ kintamuosius: „apskritimas“ ir „spindulys“, taip pat „plūduriavimo“ kintamąjį, kuris yra „skersmuo“, kad nustatytų apskritimo paviršiaus plotą. Tada slankioji „pi“ reikšmė buvo išsaugota papildomame kintamajame, pavadintame „pi“. Galiausiai tipo simbolio „buferis“ laiko eilutę, kurios ilgis yra 50. Skirstant išteklius, buferis gaudavo įrašytus simbolius ir, gavęs visus kintamuosius, pridėdavo juos prie eilutės. The pagrindinis () metodas bando suprasti kiekvieną kintamąjį. Jei įgyvendinimas atliktas teisingai, jis grąžins 0 į pagrindinis () metodas.

#include
#include
#include

tarpt pagrindinis ( ) {

tarpt perimetras = 44 ;

printf ( 'Perimetro reikšmė yra: %d \n , perimetras ) ;

tarpt spindulys = 7 ;

printf ( 'Norėdami rasti Pi reikšmę. Pirmiausia suraskite skersmens reikšmę. \n ) ;

plūdė skersmuo = ( plūdė ) 7 * du ;

printf ( 'Spindulio reikšmę padauginkite iš 2, kad gautumėte skersmens vertę. \n \n
'Skersmens vertė yra: %f \n , skersmuo ) ;

plūdė pi = perimetras / skersmuo ;

char buferis [ penkiasdešimt ] ;
sprintf ( buferis , '%f' , pi ) ;

printf ( 'Pi reikšmė išsaugoma kaip %s \n , buferis ) ;

grąžinti 0 ;
}

Atlikę pirmiau minėtą kodo fragmentą, mes galėjome nustatyti „pi“ reikšmę naudodami apskritimo perimetrą ir skersmenį.

Išvada

Programavimo kalbos C funkcija sprintf() buvo aptarta šioje „Linux Hint“ mokymo programoje. Kalbėjome apie funkcijos sprintf () sintaksę ir formato specifikacijas, kurios buvo naudojamos koduojant C, kad deklaruotų parametrą. Tada, siekiant padėti vartotojui suprasti, kaip sprintf () metodas veikia, įgyvendinome du unikalius pavyzdžius.