Vad är formatspecifikationer i C?

Vad Ar Formatspecifikationer I C



I C-programmering, formatspecifikationer spelar en viktig roll i hanteringen av data. De bestämmer formatet och storleken på data som ska matas ut eller läsas från inmatnings-/utmatningsenheten. Att förstå det anpassade formatet är ett viktigt ämne i C-programmering eftersom det används ofta som utdata för funktioner.

I den här artikeln kommer vi att täcka grunderna, syntaxen och exempel på användning formatspecifikationer i C Programmering .

Formatspecifikationer i C

De formatspecifikationer används för att ange formatet för utdatasträngen, som sedan skrivs ut på konsolen med hjälp av printf() funktion och de kan också användas i scanf() funktion för att ta input från användaren. Vi använder % symbol med varje formatspecifikation. C-språket ger olika formatspecifikationer för varje datatyp. Några av formatspecifikationer du kan använda i dina C-program nämns i tabellen nedan:







Data typ Formatspecifikation
Heltal Sjungat heltal %d
Osignerat heltal %i
Signerat kort heltal %Hej
Osignerat kort heltal %hu
dubbel dubbel %lf
lång dubbel %Lf
karaktär %c
lång lång %I
Osignerad lång %lu
Osignerad lång lång %llu
lång lång %lli eller %lld
sträng %s
Skriver ingenting %n
Flytande poäng av vetenskapliga notationer %e eller %E
Skriver ut pekare %p
%O Åttakantig representation
%x Hexa decimal representation

Genom de ovan nämnda formatspecifikationerna i printf() funktion , kan du hämta data som lagras i den.



Här är några enkla exempel på att använda formatspecifikationer för olika datatyper i C:



1: Heltal

#include

int huvud ( ) {

int på ett = 10 ;

printf ( 'Signat heltal: %d \n ' , på ett ) ;

printf ( 'Osignerat heltal: %u \n ' , på ett ) ;

printf ( 'Signat kort heltal: %hi \n ' , ( kort ) på ett ) ;

printf ( 'Osignerat kort heltal: %hu \n ' , ( osignerad kort ) på ett ) ;

lämna tillbaka 0 ;

}





2: Dubbel

#include

int huvud ( ) {

dubbel på ett = 10.5 ;

printf ( 'Dubbel: %lf \n ' , på ett ) ;

printf ( 'Lång dubbel: %Lf \n ' , ( lång dubbel ) på ett ) ;

lämna tillbaka 0 ;

}

3: Karaktär

#include

int huvud ( ) {

röding kap = 'a' ;

printf ( 'Tecken: %c \n ' , kap ) ;

lämna tillbaka 0 ;

}



4: lång

#include

int huvud ( ) {

lång på ett = 100 000 ;

printf ( 'Lång: %ld \n ' , på ett ) ;

printf ( 'Osignerad lång: %lu \n ' , ( osignerad lång ) på ett ) ;

printf ( 'Lång lång: %lld \n ' , ( lång lång ) på ett ) ;

printf ( 'Osignerad lång lång: %llu \n ' , ( osignerad lång lång ) på ett ) ;

lämna tillbaka 0 ;

}

5: Sträng

#include

int huvud ( ) {

röding str [ ] = 'Hej världen!' ;

printf ( 'Sträng: %s \n ' , str ) ;

lämna tillbaka 0 ;

}

6: Diverse

#include

int huvud ( ) {

dubbel på ett = 123,45 ;

printf ( 'Flytande punkter för vetenskapliga notationer: %e \n ' , på ett ) ;

printf ( 'Skriver ut pekare: %p \n ' , & på ett ) ;

printf ( 'Åttakantig representation: %o \n ' , femton ) ;

printf ( 'Hexa decimal representation: %x \n ' , femton ) ;

printf ( 'Skriver ut %% tecken: %% \n ' ) ;

lämna tillbaka 0 ;

}

Formatering med formatspecifikationer

Vissa verktyg i C kan användas för att formatera utdata, de är vanligtvis infogade mellan % tecken och formatspecifikationssymbolen. Vi har nämnt några av formateringsverktygen nedan:

  • De period (.) tecken separerar fältets bredd med precision.
  • De minus (-) tecken talar om för vänsterjusteringen.
  • De siffra efter % skylt anger den minsta fältbredden som ska skrivas ut.

Exempel

I exempelkoden nedan har vi använt formateringsverktygen med formatspecifikationerna:

#include

int huvud ( )

{

röding str [ ] = 'Linux' ;

printf ( '%30s \n ' , str ) ;

printf ( '%-30s \n ' , str ) ;

printf ( '%10,5s \n ' , str ) ;

printf ( '%-20,5s \n ' , str ) ;

lämna tillbaka 0 ;

}

I ovanstående kod %30s anger att strängen ska skrivas ut i ett fält med en minsta bredd på 30 tecken. %-30s indikerar att strängen skrivs ut i ett fält på minst 30 tecken men den ska lämnas inställd. Detsamma är fallet för $10,5s och %-20,5s.

Slutsats

De formatspecifikationer används för att formatera in- och utdatafunktioner inklusive printf() funktioner. De formatspecifikationer bestäm formatet för utdatasträngen och de används med % karaktär. När värdet är lagrat i variabeln kan du inte visa utdata direkt på konsolen utan att använda formatspecifikationerna. Vi har diskuterat olika typer av formatspecifikationer med exempelkoden i avsnittet ovan i guiden.