__min
Macro del preprocessore che restituisce il più piccolo di due valori.
Sintassi
#define __min(a,b) (((a) < (b)) ? (a) : (b))
Parametri
a
, b
Valori di qualsiasi tipo su cui funziona l'operatore < .
Valore restituito
Il minore dei due argomenti.
Osservazioni:
La macro __min
confronta due valori e restituisce il valore di quello minore. Gli argomenti possono essere di qualsiasi tipo di dati numerico, con o senza segno. Il tipo di dati deve essere lo stesso per entrambi gli argomenti e il valore restituito.
L'argomento restituito viene valutato due volte dalla macro. La valutazione doppia può causare risultati imprevisti se l'argomento è un'espressione che ne modifica il valore quando viene valutata, ad esempio *p++
.
Requisiti
Ciclo | Intestazione obbligatoria |
---|---|
__min |
<stdlib.h> |
Esempio
// crt_minmax.c
#include <stdlib.h>
#include <stdio.h>
int main( void )
{
int a = 10;
int b = 21;
printf( "The larger of %d and %d is %d\n", a, b, __max( a, b ) );
printf( "The smaller of %d and %d is %d\n", a, b, __min( a, b ) );
}
The larger of 10 and 21 is 21
The smaller of 10 and 21 is 10