Printf () -funksjonen i C ++ brukes til å skrive en formatert streng til stdout.
printf () prototype
int printf (const char * format,…);
Den printf()
funksjonen skriver strengen peker til formatet til stdout. Strengformatet kan inneholde formatspesifikatorer som begynner med% som erstattes av verdiene til variabler som sendes til printf()
funksjonen som tilleggsargumenter.
Det er definert i topptekstfilen.
printf () Parametere
- format: peker til en null avsluttet streng som skrives til filstrømmen. Den består av tegn sammen med valgfrie formatspesifikatorer som begynner med%.
Formatspesifikatorene erstattes av verdiene til respektive variabler som følger formatstrengen.
Formatspesifikatoren har følgende deler:
- Et ledende% tegn
- Flagg: Valgfritt ett eller flere flagg som endrer konverteringsadferden.
- -: Venstre rettferdiggjør resultatet innenfor feltet. Som standard er det rettferdiggjort.
- +: Tegn på resultatet er festet til begynnelsen av verdien, selv for positive resultater.
- Mellomrom: Hvis det ikke er noe tegn, er et mellomrom festet til begynnelsen av resultatet.
- #: En alternativ form for konvertering utføres.
- 0: Den brukes til heltall og flytende nummer. Ledende nuller brukes til å putte tallene i stedet for mellomrom.
- Bredde: En valgfri * eller heltallverdi som brukes til å spesifisere minimumsbreddefelt.
- Presisjon: Et valgfritt felt som består av en. etterfulgt av * eller heltall eller ingenting for å spesifisere presisjonen.
- Lengde: En valgfri lengdemodifikator som spesifiserer størrelsen på argumentet.
- Spesifikator: En konverteringsformatspesifikator. De tilgjengelige formatspesifikasjonene er som følger:
Format Spesifikator Beskrivelse % Skriver ut% c Skriver et enkelt tegn s Skriver en karakterstreng d eller i Konverterer et signert heltall til desimalrepresentasjon o Konverterer et usignert heltall til oktal representasjon X eller x Konverterer et usignert heltall til heksadesimal representasjon u Konverterer et usignert heltall til desimalrepresentasjon F eller f Konverterer flytende nummer til desimalrepresentasjonen E eller e Konverterer flytende nummer til desimaleksponentnotasjonen A eller a Konverterer flytende nummer til den heksadesimale eksponenten G eller g Konverterer flytende nummer til enten desimal- eller desimaleksponentnotasjon n Returnerer antall tegn som hittil er skrevet av denne samtalen til funksjonen. Resultatet skrives til den verdien argumentet peker på s Skriver en implementeringsdefinert tegnsekvens som definerer en peker. Så det generelle formatet til formatspesifikatoren er:
%(flags)(width)(.precision)(length)specifier
- …: Andre tilleggsargumenter som spesifiserer dataene som skal skrives ut. De forekommer i en sekvens i henhold til formatet.
printf () Returverdi
Hvis det lykkes, printf()
returnerer funksjonen antall tegn som er skrevet. Ved feil returnerer den en negativ verdi.
Eksempel 1: Hvordan funksjonen printf () fungerer
#include int main() ( int x = 5; char my_name() = "Lincoln"; printf("x = %d ", x); printf("My name is %s ", my_name); return 0; )
Når du kjører programmet, vil utdataene være:
x = 5 Jeg heter Lincoln
Eksempel 2: Flere eksempler på 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; )
Når du kjører programmet, vil utdataene være:
5.000 / 3.000 = 1.667 Innstillingsbredde en oktalekvivalent på 10 er 12