I denne artikel vil vi dække det grundlæggende, syntaks og eksempler på brug format specifikationer i C Programmering .
Formatspecifikationer i C
Det format specifikationer bruges til at angive formatet på outputstrengen, som derefter udskrives på konsollen ved hjælp af printf() funktion, og de kan også bruges i scanf() funktion til at modtage input fra brugeren. Vi bruger % symbol med hver formatspecifikation. C-sproget giver anderledes format specifikationer for hver datatype. Nogle af format specifikationer du kan bruge i dine C-programmer er nævnt i tabellen nedenfor:
Datatype | Formatspecifikation | |
Heltal | Singed heltal | %d |
Usigneret heltal | %jeg | |
Signeret kort heltal | %Hej | |
Usigneret kort heltal | %hu | |
dobbelt | dobbelt | %lf |
lang dobbelt | %Lf | |
Karakter | %c | |
lang | lang | %JEG |
Usigneret lang | %lu | |
Usigneret lang lang | %llu | |
lang lang | %lli eller %lld | |
snor | %s | |
Udskriver intet | %n | |
Flydende punkter i videnskabelige notationer | %e eller %E | |
Udskriver pointer | %p | |
%O | Ottekantet repræsentation | |
%x | Hexa decimal repræsentation |
Gennem de ovennævnte formatspecifikationer i printf() funktion , kan du hente de data, der er gemt i den.
Her er nogle enkle eksempler på brug format specifikationer for forskellige datatyper i C:
1: Heltal
#includeint vigtigste ( ) {
int på en = 10 ;
printf ( 'Signet heltal: %d \n ' , på en ) ;
printf ( 'Usigned heltal: %u \n ' , på en ) ;
printf ( 'Underskrevet kort heltal: %hi \n ' , ( kort ) på en ) ;
printf ( 'Usigned kort heltal: %hu \n ' , ( usigneret kort ) på en ) ;
Vend tilbage 0 ;
}
2: Dobbelt
#includeint vigtigste ( ) {
dobbelt på en = 10.5 ;
printf ( 'Dobbelt: %lf \n ' , på en ) ;
printf ( 'Lang dobbelt: %Lf \n ' , ( lang dobbelt ) på en ) ;
Vend tilbage 0 ;
}
3: Karakter
#includeint vigtigste ( ) {
char ch = 'en' ;
printf ( 'Karakter: %c \n ' , ch ) ;
Vend tilbage 0 ;
}
4: lang
#includeint vigtigste ( ) {
lang på en = 100.000 ;
printf ( 'Lang: %ld \n ' , på en ) ;
printf ( 'Usigned Long: %lu \n ' , ( usigneret lang ) på en ) ;
printf ( 'Lang lang: %lld \n ' , ( lang lang ) på en ) ;
printf ( 'Usigned Long Long: %llu \n ' , ( usigneret lang lang ) på en ) ;
Vend tilbage 0 ;
}
5: Snor
#includeint vigtigste ( ) {
char str [ ] = 'Hej Verden!' ;
printf ( 'String: %s \n ' , str ) ;
Vend tilbage 0 ;
}
6: Diverse
#includeint vigtigste ( ) {
dobbelt på en = 123,45 ;
printf ( 'Flydende punkter i videnskabelige notationer: %e \n ' , på en ) ;
printf ( 'Udskriver pointer: %p \n ' , & på en ) ;
printf ( 'Ottekantet repræsentation: %o \n ' , femten ) ;
printf ( 'Hexa decimal repræsentation: %x \n ' , femten ) ;
printf ( 'Udskriver %% tegn: %% \n ' ) ;
Vend tilbage 0 ;
}
Formatering med formatspecifikationer
Nogle værktøjer i C kan bruges til at formatere output, de er generelt indsat mellem % tegnet og formatangivelsessymbolet. Vi har nævnt nogle af formateringsværktøjerne nedenfor:
- Det periode (.) skiltet adskiller feltbredden med præcision.
- Det minus (-) tegn fortæller venstre justering.
- Det nummer efter % skilt angiver den mindste feltbredde, der skal udskrives.
Eksempel
I nedenstående eksempelkode har vi brugt formateringsværktøjerne med formatspecifikationerne:
#includeint vigtigste ( )
{
char str [ ] = 'Linux' ;
printf ( '%30s \n ' , str ) ;
printf ( '%-30s \n ' , str ) ;
printf ( '%10,5s \n ' , str ) ;
printf ( '%-20,5s \n ' , str ) ;
Vend tilbage 0 ;
}
I ovenstående kode %30s angiver, at strengen skal udskrives i et felt med en minimumsbredde på 30 tegn. %-30s angiver udskrivning af strengen i et felt på minimum 30 tegn, men den skal venstrejusteres. Det samme er tilfældet for $10,5s og %-20,5s.
Bundlinie
Det format specifikationer bruges til at formatere input og output funktioner, herunder printf() funktioner. Det format specifikationer bestemme formatet på outputstrengen, og de bruges sammen med % Karakter. Når værdien er gemt i variablen, kan du ikke vise output direkte på konsollen uden at bruge formatspecifikationerne. Vi har diskuteret forskellige typer format specifikationer med eksempelkoden i ovenstående afsnit af vejledningen.