__min

一个预处理器宏,它返回两个值中的较小者。

语法

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

参数

ab
< 运算符处理的任何类型的值。

返回值

两个参数中的较小者。

注解

__min 宏会将两个值进行比较并返回其中的较小者。 参数可以是任何数字数据类型,有符号或无符号均可。 两个自变量以及返回值必须是同一数据类型。

返回的参数由该宏计算两次。 如果该自变量是计算它时更改其值的表达式(例如 *p++),则双精度计算可能就会导致意外结果。

要求

例程 必需的标头
__min <stdlib.h>

示例

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

另请参阅

数学和浮点支持
__max