Udostępnij za pośrednictwem


__min

Makro preprocesora zwracające mniejsze z dwóch wartości.

Składnia

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

Parametry

a, b
Wartości dowolnego typu, na których < działa operator.

Wartość zwracana

Mniejsze z dwóch argumentów.

Uwagi

Makro __min porównuje dwie wartości i zwraca wartość mniejszej. Argumenty mogą mieć dowolny typ danych liczbowych, podpisany lub niepodpisany. Zarówno argumenty, jak i wartość zwracana muszą być tego samego typu danych.

Zwrócony argument jest obliczany dwa razy przez makro. Podwójna ocena może prowadzić do nieoczekiwanych wyników, jeśli argument jest wyrażeniem, które zmienia jego wartość podczas obliczania, na przykład *p++.

Wymagania

Procedura Wymagany nagłówek
__min <stdlib.h>

Przykład

// 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

Zobacz też

Obsługa obliczeń matematycznych i zmiennoprzecinkowych
__max