U ovom ćemo članku pokriti osnove, sintaksu i primjere upotrebe specifikatori formata u C Programiranje .
Specifikatori formata u C
The specifikatori formata koriste se za određivanje formata izlaznog niza, koji se zatim ispisuje na konzoli pomoću printf() funkciju i također se mogu koristiti u scanf() funkcija za primanje unosa od korisnika. Koristimo se % simbol sa svakim specifikatorom formata. Jezik C pruža drugačije specifikatori formata za svaki tip podataka. Neki od specifikatori formata koje možete koristiti u svojim C programima navedeni su u tablici ispod:
Tip podataka | Specifikator formata | |
Cijeli broj | Potpjevani cijeli broj | %d |
Cijeli broj bez predznaka | %i | |
Kratki cijeli broj s predznakom | %bok | |
Kratki cijeli broj bez predznaka | %hu | |
dvostruko | dvostruko | %lf |
duga dvostruka | %Lf | |
lik | %c | |
dugo | dugo | %I |
Nepotpisano dugo | %Lu | |
Nepotpisano dugo dugo | %llu | |
dugo dugo | %lli ili %lld | |
niz | %s | |
Ne ispisuje ništa | %n | |
Pokretni zarezi znanstvenih zapisa | %e ili %E | |
Ispisuje pokazivače | %p | |
%O | Osmerokutni prikaz | |
%x | Heksa decimalni prikaz |
Kroz gore navedene specifikatore formata u funkcija printf(). , možete dohvatiti podatke pohranjene u njemu.
Evo nekoliko jednostavnih primjera korištenja specifikatori formata za različite tipove podataka u C-u:
1: Cijeli brojevi
#includeint glavni ( ) {
int na jedan = 10 ;
printf ( 'Cijeli broj s predznakom: %d \n ' , na jedan ) ;
printf ( 'Cijeli broj bez predznaka: %u \n ' , na jedan ) ;
printf ( 'Kratki cijeli broj s predznakom: %bok \n ' , ( kratak ) na jedan ) ;
printf ( 'Kratki cijeli broj bez predznaka: %hu \n ' , ( nepotpisan kratak ) na jedan ) ;
povratak 0 ;
}
2: Duplo
#includeint glavni ( ) {
dvostruko na jedan = 10.5 ;
printf ( 'Dvostruko: %lf \n ' , na jedan ) ;
printf ( 'Dugi dvostruki: %Lf \n ' , ( dugo dvostruko ) na jedan ) ;
povratak 0 ;
}
3: Karakter
#includeint glavni ( ) {
char CH = 'a' ;
printf ( 'Lik: %c \n ' , CH ) ;
povratak 0 ;
}
4: dugo
#includeint glavni ( ) {
dugo na jedan = 100 000 ;
printf ( 'Dugo: %ld \n ' , na jedan ) ;
printf ( 'Unsigned Long: %lu \n ' , ( nepotpisan dugo ) na jedan ) ;
printf ( 'Dugo Dugo: %lld \n ' , ( dugo dugo ) na jedan ) ;
printf ( 'Unsigned Long Long: %llu \n ' , ( nepotpisan dugo dugo ) na jedan ) ;
povratak 0 ;
}
5: Niz
#includeint glavni ( ) {
char str [ ] = 'Pozdrav svijete!' ;
printf ( 'Niz: %s \n ' , str ) ;
povratak 0 ;
}
6: Razno
#includeint glavni ( ) {
dvostruko na jedan = 123.45 ;
printf ( 'Plutajuće točke znanstvenih zapisa: %e \n ' , na jedan ) ;
printf ( 'Ispisuje pokazivače: %p \n ' , i na jedan ) ;
printf ( 'Osmerokutni prikaz: %o \n ' , petnaest ) ;
printf ( 'Heksa decimalni prikaz: %x \n ' , petnaest ) ;
printf ( 'Ispisuje %% znak: %% \n ' ) ;
povratak 0 ;
}
Formatiranje s specifikacijama formata
Neki alati u C-u mogu se koristiti za formatiranje izlaza, oni se općenito umeću između % znak i simbol specifikatora formata. U nastavku smo spomenuli neke od alata za oblikovanje:
- The točka (.) znak precizno odvaja širinu polja.
- The minus (-) znak pokazuje lijevo poravnanje.
- The broj nakon što znak % specificira minimalnu širinu polja za ispis.
Primjer
U donjem primjeru koda koristili smo alate za oblikovanje s specifikatorima formata:
#includeint glavni ( )
{
char str [ ] = 'Linux' ;
printf ( '%30s \n ' , str ) ;
printf ( '%-30 s \n ' , str ) ;
printf ( '%10.5s \n ' , str ) ;
printf ( '%-20,5 s \n ' , str ) ;
povratak 0 ;
}
U gornjem kodu %30s navodi da niz treba biti ispisan u polju s minimalnom širinom od 30 znakova. %-30s označava ispis niza u polju od minimalno 30 znakova, ali treba biti lijevo poravnat. Isti je slučaj i za 10,5 dolara i %-20,5 s.
Poanta
The specifikatori formata koriste se u formatiranju ulaznih i izlaznih funkcija uključujući printf() funkcije. The specifikatori formata odrediti format izlaznog niza i oni se koriste s % znak. Kada je vrijednost pohranjena u varijabli, ne možete izravno prikazati izlaz na konzoli bez upotrebe specifikatera formata. Razgovarali smo o različitim vrstama specifikatori formata s primjerom koda u gornjem odjeljku vodiča.