Ano ang mga Format Specifier sa C?

Ano Ang Mga Format Specifier Sa C



Sa C Programming, mga tagatukoy ng format may mahalagang papel sa pamamahala ng data. Tinutukoy nila ang format at laki ng data na ilalabas o babasahin mula sa input/output device. Ang pag-unawa sa custom na format ay isang mahalagang paksa sa C Programming dahil malawak itong ginagamit bilang output ng mga function.

Sa artikulong ito, tatalakayin natin ang mga pangunahing kaalaman, syntax, at mga halimbawa ng paggamit ng mga tagatukoy ng format sa C Programming .

Mga Specifier ng Format sa C

Ang mga tagatukoy ng format ay ginagamit upang tukuyin ang format ng output string, na pagkatapos ay ipi-print sa console gamit ang printf() function at maaari din silang gamitin sa scanf() function na kumuha ng input mula sa user. Ginagamit namin ang % simbolo sa bawat format specifier. Ang wikang C ay nagbibigay ng iba mga tagatukoy ng format para sa bawat uri ng data. Ilan sa mga mga tagatukoy ng format na magagamit mo sa iyong mga C program ay binanggit sa talahanayan sa ibaba:







Uri ng datos Tagatukoy ng Format
Integer Singed integer %d
Unsigned integer %i
Naka-sign short integer %hi
Unsigned short integer %hu
doble doble %lf
mahabang doble %Lf
karakter %c
mahaba mahaba %ako
Unsigned mahaba %lu
Unsigned long long %llu
mahaba haba %lli o %lld
string %s
Walang nai-print %n
Mga Lumulutang na Punto ng Mga Notasyong Siyentipiko %e o %E
Nagpi-print ng mga pointer %p
%O Octagonal na representasyon
%x Hexa decimal na representasyon

Sa pamamagitan ng mga nabanggit na format specifiers sa printf() function , maaari mong makuha ang data na nakaimbak dito.



Narito ang ilang simpleng halimbawa gamit mga tagatukoy ng format para sa iba't ibang uri ng data sa C:



1: Mga integer

#include

int pangunahing ( ) {

int sa isa = 10 ;

printf ( 'Naka-sign Integer: %d \n ' , sa isa ) ;

printf ( 'Unsigned Integer: %u \n ' , sa isa ) ;

printf ( 'Signed Short Integer: %hi \n ' , ( maikli ) sa isa ) ;

printf ( 'Unsigned Short Integer: %hu \n ' , ( hindi pinirmahan maikli ) sa isa ) ;

bumalik 0 ;

}





2: Doble

#include

int pangunahing ( ) {

doble sa isa = 10.5 ;

printf ( 'Doble: %lf \n ' , sa isa ) ;

printf ( 'Mahabang Doble: %Lf \n ' , ( mahaba doble ) sa isa ) ;

bumalik 0 ;

}

3: Tauhan

#include

int pangunahing ( ) {

char ch = 'a' ;

printf ( 'Character: %c \n ' , ch ) ;

bumalik 0 ;

}



4: mahaba

#include

int pangunahing ( ) {

mahaba sa isa = 100000 ;

printf ( 'Mahaba: %ld \n ' , sa isa ) ;

printf ( 'Unsigned Long: %lu \n ' , ( hindi pinirmahan mahaba ) sa isa ) ;

printf ( 'Long Long: %lld \n ' , ( mahaba mahaba ) sa isa ) ;

printf ( 'Hindi nalagdaan na Mahabang Mahabang: %llu \n ' , ( hindi pinirmahan mahaba mahaba ) sa isa ) ;

bumalik 0 ;

}

5: String

#include

int pangunahing ( ) {

char str [ ] = 'Hello, Mundo!' ;

printf ( 'String: %s \n ' , str ) ;

bumalik 0 ;

}

6: Iba't-ibang

#include

int pangunahing ( ) {

doble sa isa = 123.45 ;

printf ( 'Mga lumulutang na punto ng mga siyentipikong notasyon: %e \n ' , sa isa ) ;

printf ( 'Mga naka-print na pointer: %p \n ' , at sa isa ) ;

printf ( 'Octagonal na representasyon: %o \n ' , labinlima ) ;

printf ( 'Hexa decimal na representasyon: %x \n ' , labinlima ) ;

printf ( 'Nag-print ng %% character: %% \n ' ) ;

bumalik 0 ;

}

Pag-format Gamit ang Mga Tagatukoy ng Format

Ang ilang mga tool sa C ay maaaring gamitin para sa pag-format ng output, ang mga ito ay karaniwang ipinasok sa pagitan ng % sign at ang simbolo ng format specifier. Nabanggit namin ang ilan sa mga tool sa pag-format sa ibaba:

  • Ang panahon (.) sign na naghihiwalay sa lapad ng field nang may katumpakan.
  • Ang minus (-) ang tanda ay nagsasabi sa kaliwang pagkakahanay.
  • Ang numero pagkatapos ng % tanda tumutukoy sa pinakamababang lapad ng field na ipi-print.

Halimbawa

Sa halimbawang code sa ibaba, ginamit namin ang mga tool sa pag-format gamit ang mga tagatukoy ng format:

#include

int pangunahing ( )

{

char str [ ] = 'Linux' ;

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

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

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

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

bumalik 0 ;

}

Sa code sa itaas %30s tumutukoy na ang string ay dapat na i-print sa isang field na may pinakamababang lapad na 30 character. %-30s ay nagpapahiwatig ng pagpi-print ng string sa isang field na hindi bababa sa 30 character ngunit dapat itong iwanang nakahanay. Ang parehong ay ang kaso para sa $10.5s at %-20.5s.

Bottom Line

Ang mga tagatukoy ng format ay ginagamit sa pag-format ng input at output function kabilang ang printf() mga function. Ang mga tagatukoy ng format tukuyin ang format ng output string at ginagamit ang mga ito kasama ng % karakter. Kapag ang halaga ay naka-imbak sa variable, hindi mo maipapakita ang output sa console nang direkta nang hindi gumagamit ng mga format specifier. Napag-usapan natin ang iba't ibang uri ng mga tagatukoy ng format kasama ang halimbawang code sa itaas na seksyon ng gabay.