我定义宏longlong最大范围
#define ULONGLONG_MAX 18446744073709551615
在LINUX下编译会有warning,
然后修改下宏定义
#define ULONGLONG_MAX (pow(2, 64) - 1)
warning神奇消失了。
#define ULONGLONG_MAX 18446744073709551615
在LINUX下编译会有warning,
然后修改下宏定义
#define ULONGLONG_MAX (pow(2, 64) - 1)
warning神奇消失了。
使用表达式来代替特别大的数字,宏展开是在编译阶段,仅仅把宏名代换成
定义内容,替换文本当作一个字符串,并不会计算表达式。以此避免这类问题。