c有趣代码片段

#define min(x,y) ({\

    typeof(x) _x=(x); \

    typeof(y) _y=(y); \

    (void) (&_x==&_y); \

    _x < _y ? _x : _y; })


出现在内核3.3.8

(void) (&_x==&_y);的目的是检查指针是否可比较,不是同一个类型会编译出错

你可能感兴趣的:(c,内核)