如何查看版本> =设置版本,例如2.3.4.17如果我有以下定义(每个可能有1-2位数字)?
#define VERSION_NUM_MAJOR 1
#define VERSION_NUM_MINOR 0
#define VERSION_NUM_SERVPACK 0
#define VERSION_NUM_BUILD 10
如果我有以下定义......
#define VERSION_NUM 1000010
......它会像......一样简单。
#if VERSION_NUM > 2030417
但遗憾的是,传统的SDK没有提供它,我需要它来进行条件编译(“#if ... #endif”)。
我可以这样做,但这看起来很复杂:
#if (VERSION_NUM_MAJOR > 2) || ((VERSION_NUM_MAJOR == 2) && ((VERSION_NUM_MINOR > 3) || ((VERSION_NUM_MINOR == 3) && ((VERSION_NUM_SERVPACK > 4) || ((VERSION_NUM_SERVPACK == 4) && (VERSION_NUM_BUILD >= 17))))))
答案 0 :(得分:0)
知道了:
#define VERSION_MIN(a,b,c,d) (VERSION_NUM_MAJOR>a)||((VERSION_NUM_MAJOR==a)&&((VERSION_NUM_MINOR>b)||((VERSION_NUM_MINOR==b)&&((VERSION_NUM_SERVPACK>c)||((VERSION_NUM_SERVPACK==c)&&(VERSION_NUM_BUILD>=d))))))
#if VERSION_MIN(2,3,4,17)
#endif