#ifndef 后 参数加括号会报警
#ifndef min(a,b)
#define min(a,b) ((a < b) ? a : b)
#endif
#define min(a,b) ((a < b) ? a : b)
#endif
会报警warning: extra tokens at end of #ifndef directive
求解决方案
debain 32位下gcc编译
#include <stdio.h> #include <string.h> int main( void ) { double a; memset( &a, 0xFF, sizeof(a) ); printf( "%f\n", a ); // -nan printf( "%d\n", a<a ); // 0 printf( "%d\n", a<=a ); // 0 printf( "%d\n", a>a ); // 0 printf( "%d\n", a>=a ); // 0 printf( "%d\n", a==a ); // 0 printf( "%d\n", a!=a ); // 1 }