Paano Gamitin ang %i at %d para Mag-print ng Integer sa C Gamit ang printf()

Paano Gamitin Ang I At D Para Mag Print Ng Integer Sa C Gamit Ang Printf



Sa C programming language, ang mga format specifier ay gumaganap ng isang mahalagang papel habang tinutulungan ka nila sa pagpapakita ng isang halaga sa output. Ang mga format specifier na ito ay ginagamit kasama ng printf() function upang tukuyin ang uri ng data na kailangang i-output. Isa sa mga malawakang ginagamit na format specifier sa C programming language ay %i at %d na ginagamit upang i-print ang integer.

Kung hindi mo alam ang tungkol sa %i at %d mga tagatukoy ng format, sundin ang mga alituntunin ng artikulong ito.

%i Format Specifier

Sa C programming language, ang %i ay ginagamit upang mag-print ng isang naka-sign integer kapag ginamit sa printf() function. Ang mga naka-sign na integer ay ang mga maaaring maging positibo o negatibo. Sa C programming kapag gumagamit ng %i ang argument value na dumadaan ay dapat na isang expression o isang integer type na awtomatikong sinusuri sa isang integer datatype. Maaari mo ring gamitin ang %i specifier upang basahin ang isang halaga ng character na nasa hanay ng isang naka-sign integer.







%d Tagatukoy ng Format

Ang %d format specifier sa kabilang banda ay ginagamit upang i-print ang unsigned integer sa C programming language. Dito ang mga unsigned integer ay mga positive integer. Sa wikang C kapag gumamit ka ng %d pagkatapos ay ang halaga ng uri ng mga argumento int .



Mga Pagkakaiba

pareho %i at %d ang mga format specifier ay madalas na ginagamit sa C programming language para sa pag-print ng mga integer. Maaari silang magkamukha sa mga tuntunin ng paggamit pati na rin ang pag-uugali kapag ginagamit ang printf() function.



Subaybayan natin ang isang sample code kung saan ginagamit ang parehong format specifier.





#include

int pangunahing ( ) {

int digit ;

printf ( 'Pakilagay ang anumang digit: ' ) ;

scanf ( '%i' , at digit ) ;

printf ( ' \n Ang digit ay: %i \n ' , digit ) ;

printf ( 'Ang digit ay: %d \n ' , digit ) ;

bumalik 0 ;

}

Sa code na ito, una naming sinisimulan ang isang variable at kumukuha ng halaga mula sa user gamit ang scanf(). Pagkatapos ay ipinapakita namin ang output gamit %d at %i .

Output:



Parehong nagbibigay ng katulad na output kapag ginamit sa printf() function. Hindi mahalaga kung ilalagay mo ang positibong halaga o negatibo, ang resulta ay palaging pareho.

Gayunpaman, kung titingnan natin ang function ng scanf, maaari nating maiiba ang mga ito nang tama. Sa code sa itaas, kung mag-input kami ng decimal na halaga tulad ng “012” . Kung gagamitin natin “%d” sa halip na %i, makukuha mo ang output 12. Ang dahilan ay iyon %d binabalewala ang 0 zero na halaga mula sa input ng user.

#include

int pangunahing ( ) {

int digit ;

printf ( 'Pakilagay ang anumang digit: ' ) ;

scanf ( '%d' , at digit ) ;

printf ( ' \n Ang digit ay: %i \n ' , digit ) ;

printf ( 'Ang digit ay: %d \n ' , digit ) ;

bumalik 0 ;

}

Output

Kung ang parehong halaga ay ipinasok gamit ang %i tulad ng sa scanf() function, ang output ay magiging 10 sa kasong ito. Ang dahilan ay %i nagpi-print ng decimal na halaga ng 012 (octal na representasyon).

#include

int pangunahing ( ) {

int digit ;

printf ( 'Pakilagay ang anumang digit: ' ) ;

scanf ( '%i' , at digit ) ;

printf ( ' \n Ang digit ay: %i \n ' , digit ) ; // output ng sapatos

printf ( 'Ang digit ay: %d \n ' , digit ) ; // output ng sapatos

bumalik 0 ;

}

Konklusyon

Ang format specifier ay isang pattern na sa simula ay nagsisimula sa % sign at kadalasang sinasabi nito sa amin kung anong uri ng data ang inilalagay sa input at kung anong data ang ipapakita. %d at %i ay dalawang specifier na malawakang ginagamit sa C programming. Magkapareho sila kapag ginamit sa printf() function ngunit naglalabas sila ng iba't ibang resulta kapag ginamit sa scanf() function.