Funkcija printf () C ++ naudojama norint suformatuotą eilutę įrašyti į standartą.
printf () prototipas
int printf (const char * formatas,…);
printf()
Funkcija rašo eilutę pažymėjo, kad pagal formatą stdout. Stygos formate gali būti formato specifikatoriai, prasidedantys%, kurie yra pakeisti kintamųjų reikšmėmis, kurios perduodamos printf()
funkcijai kaip papildomi argumentai.
Tai apibrėžta antraštės faile.
printf () parametrai
- formatas: Neleistos eilutės, kuri įrašoma į failų srautą, žymeklis. Ją sudaro simboliai ir pasirenkami formato specifikatoriai, prasidedantys%.
Formato specifikatoriai pakeičiami atitinkamų kintamųjų reikšmėmis, kurios seka formato eilutę.
Formato specifikatoriuje yra šios dalys:
- Pirmaujantis% ženklas
- Žymos: pasirinktinai viena ar kelios žymos, modifikuojančios konversijos elgseną.
- -: kairė pateisina rezultatą lauke. Pagal nutylėjimą tai yra teisinga.
- +: Rezultato ženklas pridedamas prie vertės pradžios, net jei teigiami rezultatai.
- Erdvė: jei nėra ženklo, rezultato pradžioje pridedama tarpas.
- #: Atliekama alternatyvi konversijos forma.
- 0: Jis naudojamas sveikam skaičiui ir slankiojo kablelio skaičiui. Skaičių užpildymui vietoj tarpo naudojami priekiniai nuliai.
- Plotis: neprivaloma * arba sveiko skaičiaus vertė, naudojama nurodyti minimalaus pločio lauką.
- Tikslumas: neprivalomas laukas, kurį sudaro a. po kurio * arba sveikas skaičius arba nieko, kad būtų galima nurodyti tikslumą.
- Ilgis: pasirinktinis ilgio modifikatorius, nurodantis argumento dydį.
- Specifikatorius: konversijos formato specifikatorius. Galimi formatų parametrai yra šie:
Formato specifikatorius apibūdinimas % Spausdina% c Rašo vieną veikėją s Rašo simbolių eilutę d arba aš Konvertuoja pasirašytą sveikąjį skaičių į dešimtainį vaizdą o Konvertuoja nepasirašytą sveikąjį skaičių į aštuonetinį vaizdą X arba x Konvertuoja nepasirašytą sveikąjį skaičių į šešioliktainį vaizdą u Konvertuoja nepasirašytą sveikąjį skaičių į dešimtainį vaizdą F arba f Konvertuoja slankiojo kablelio skaičių dešimtainiu skaičiumi E arba e Konvertuoja slankiojo kablelio skaičių dešimtainio laipsnio rodikliu A arba a Konvertuoja slankiojo kablelio skaičių į šešioliktainį rodiklį G arba g Konvertuoja slankiojo kablelio skaičių dešimtainiu arba dešimtainiu laipsnių rodikliu n Grąžina iki šiol šiuo skambučiu parašytų simbolių skaičių funkcijai. Rezultatas įrašomas į argumento nurodytą vertę p Rašo įgyvendinimo apibrėžtą simbolių seką, apibrėžiančią žymeklį. Taigi bendras formato specifikatoriaus formatas yra:
%(flags)(width)(.precision)(length)specifier
- …: Kiti papildomi argumentai, nurodantys spausdintinus duomenis. Jie vyksta seka pagal formato specifikatorių.
printf () Grąžinimo vertė
Jei pavyks, printf()
funkcija grąžins parašytų simbolių skaičių. Sugedus ji grąžina neigiamą vertę.
1 pavyzdys: Kaip veikia funkcija printf ()
#include int main() ( int x = 5; char my_name() = "Lincoln"; printf("x = %d ", x); printf("My name is %s ", my_name); return 0; )
Kai paleisite programą, išvestis bus:
x = 5 Mano vardas Linkolnas
2 pavyzdys: daugiau pavyzdžių printf ()
#include int main() ( char ch = 'a'; float a = 5.0, b = 3.0; int x = 10; printf("%.3f / %.3f = %.3f ", a,b,a/b); printf("Setting width %*c ",5,ch); printf("Octal equivalent of %d is %o ",x,x); return 0; )
Kai paleisite programą, išvestis bus:
5.000 / 3.000 = 1.667 Nustatomas plotis, 10 oktalių ekvivalentas yra 12