Share via


__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 und Gleitkommaunterstützung
__max