MIN() Macro sa C Language

Min Macro Sa C Language



Ang mga relational operation sa C ay malawakang ginagamit at makikita sa halos lahat ng program na nakasulat sa wikang ito. Mayroong ilang mga operator sa wikang ito – ang pinakakaraniwang ginagamit ay katumbas ng ( = ), mas malaki sa ( > ), at mas mababa sa ( < ). Ang ganitong uri ng operasyon ay kadalasang ginagamit sa kung-kondisyon. Halimbawa, ang kundisyon ng pag-input ay ang halaga ng =, >, o < variable sa isa pang variable o pare-pareho.

Ang mga relational na operasyong ito ay lubhang kapaki-pakinabang. Ngunit may mga kaso kung saan kailangan nating malaman hindi lamang kung ang isang variable ay mas malaki o mas maliit kaysa sa isa pa, ngunit upang makuha din ang halaga nito. Bagama't madali itong gawin gamit ang mga 'if' na pahayag at simpleng relational na operasyon, ang wikang C ay nagbibigay din ng mga macro na may mga function na nagbabalik ng maximum o minimum na halaga sa pagitan ng dalawang variable.

Sa artikulong ito ng Linuxhint, matututunan mo kung paano gamitin ang macro MIN() upang mahanap ang minimum na halaga ng dalawang variable. Ipapakita namin sa iyo ang syntax, ang paraan ng pagtawag, at ang uri ng data na tinatanggap nito. Pagkatapos, titingnan natin ang isang paglalarawan kung paano ito gumagana at susuriin ang expression at formula na nalalapat ang macro na ito.







Pagkatapos ay inilalapat namin ang aming natutunan sa isang praktikal na halimbawa na kinabibilangan ng mga snippet ng code at mga larawang nagpapakita kung paano hanapin ang minimum na may iba't ibang uri ng data bilang mga input sa macro MIN().



Syntax ng MIN() Macro sa C Language

MIN ( a , b )

Paglalarawan ng MIN() Macro sa C Language



Ibinabalik ng macro MIN() ang pinakamababang halaga sa pagitan ng mga variable na “a” at “b”. Ang expression na ipinapakita ng macro MIN() ay isang true/false na kundisyon kung saan ang isang relational na operasyon na '<' ay inilapat sa pagitan ng 'a' at 'b' na mga variable. Kung ang 'a' ay mas mababa sa 'b', ang 'a' ay ibinalik. Kung ang 'b' ay mas mababa sa 'a', ang 'b' ay ibinalik.





#define MIN(a,b) (((a)<(b))?(a):(b))

Gumagana ang macro MIN() sa lahat ng uri ng data sa mga input at output nito na may tanging panuntunan na ang parehong mga variable ng input ay dapat na mga numeric na halaga.

Ang macro na ito ay tinukoy sa 'param.h' na header sa 'sys' na folder. Upang magamit ito, kailangan nating ipasok ito sa ating code tulad ng sumusunod:



#include

Paano Hanapin ang Minimum sa pagitan ng Dalawang Integer Variable gamit ang Macro MIN()

Sa halimbawang ito, nilikha namin ang mga variable na 'a' at 'b' ng uri ng int kung saan kami nagtatalaga ng isang arbitrary na halaga at mula sa kung saan nakita namin ang minimum sa pamamagitan ng pagtawag sa macro MIN(). Pagkatapos ay i-output namin ang ibinalik na halaga gamit ang printf() function.

Upang gawin ito, isasama namin ang mga header na 'stdio.h' at 'param.h' at magbukas ng main() function na may uri na void. Dito, tinutukoy namin ang mga integer na 'a' at 'b' at itinalaga ang mga ito ng random na halaga. Tinukoy din namin ang 'c' integer upang iimbak ang resulta.

Pagkatapos, tinatawag namin ang macro MIN() at ipasa ang 'a' at 'b' bilang input argument at 'c' bilang output arguments. Ipinapakita namin ang ibinalik na resulta sa pamamagitan ng pagtawag sa printf() function. Ang sumusunod ay ang code para sa halimbawang ito:

#include

#include

walang bisa pangunahing ( ) {

int a = 32 ;

int b = 14 ;

int c ;

c = MIN ( a , b ) ;

printf ( ' \n Ang pinakamababa ay %i \n ' , c ) ;

}

Susunod, nakikita namin ang isang imahe na may compilation at execution ng code na ito. Gaya ng nakikita natin, ibinabalik ng macro MIN() ang halaga ng “b” sa kasong ito.

Ganoon din ang mangyayari kung gagamitin natin ang mga variable ng double type.

#include

#include

walang bisa pangunahing ( ) {

doble a = 3 ;

doble b = 1 ;

doble c ;

c = MIN ( a , b ) ;

printf ( ' \n Ang pinakamababa ng dobleng a at b ay %f \n ' , c ) ;

}


Minimum at Maximum na may mga Floating Point Variable

Ang macro MIN() ay isang kapaki-pakinabang na function, ngunit ang paggamit nito ay hindi inirerekomenda para sa mga variable na gumagamit ng mga floating point value. Upang mahanap ang minimum ng ganitong uri ng mga halaga, ang math library ay nagbibigay ng isang hanay ng mga function na tinukoy sa 'math.h' na header. Binubuo ang set na ito ng mga function na fmin(), fminf(), at fminl(). Tingnan natin ang sumusunod na syntax para sa bawat isa sa mga function na ito:

doble fmin ( doble x , doble at ) ;
lumutang fminf ( lumutang x , lumutang at ) ;
mahaba doble fminl ( mahaba doble x , mahaba doble at ) ;

Ang function na fmin() ay gumagana sa data ng uri ng double (8 bytes) na may floating point. Gumagana ang function na fminf() sa data ng uri ng float (4 bytes), habang gumagana ang fminl() sa data na may uri na long double (16 bytes). Gayundin, pinoproseso ng mga function na ito ang mga non-numeric na halaga (NaN).

Konklusyon

Sa artikulong ito ng Linuxhint, ipinaliwanag namin ang lahat ng kailangan mong malaman upang magamit ang macro MIN() upang mahanap ang pinakamababang halaga sa pagitan ng dalawang variable. Tiningnan namin ang syntax at kahulugan ng macro na ito pati na rin ang formula na naglalapat ng true/false na kundisyon para sa isang 'mas mababa sa' operasyon (<) sa pagitan ng dalawang input variable.

Pagkatapos ay inilapat namin ang teorya na natutunan namin sa isang praktikal na halimbawa gamit ang mga snippet ng code at mga larawan upang ipakita sa iyo kung paano gamitin ang iba't ibang uri ng data. Ipinakita rin namin sa iyo ang mga inirerekomendang opsyon para harapin ang mga numero ng floating point kung saan hindi inirerekomenda ang paggamit ng MIN().