__min
Ein Präprozessormakro, das die kleineren von zwei Werten zurückgibt.
Syntax
#define __min(a,b) (((a) < (b)) ? (a) : (b))
Parameter
a
, b
Werte eines beliebigen Typs, an dem der < Operator arbeitet.
Rückgabewert
Das kleinere der beiden Argumente.
Hinweise
Das __min
-Makro vergleicht zwei Werte und gibt den kleineren Wert zurück. Die Argumente können von einen beliebigen Datentyp stammen, signed oder unsigned. Beide Argumente sowie der Rückgabewert müssen demselben Datentyp entsprechen.
Das zurückgegebene Argument wird zweimal vom Makro ausgewertet. Eine doppelte Auswertung kann zu unerwarteten Ergebnissen führen, wenn es sich bei dem Argument um einen Ausdruck handelt, der seinen Wert ändert, wenn er ausgewertet wird, z *p++
. B. .
Anforderungen
Routine | Erforderlicher Header |
---|---|
__min |
<stdlib.h> |
Beispiel
// 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
Siehe auch
Mathematische Unterstützung und Gleitkommaunterstützung
__max