准备封装keil库,使用了枚举准备类型,结果出现了warning: #66-D: enumeration value is out of "int" range这个错误。
原因是超出了枚举的上限值,int的上限值是0x7ffffffff,由下图可知当enum里面的值为0x7fffffff是编译器是不会报错的。
然后换成0x80000000时:
、
编译器就开始报错。从而验证了上面的说法。
要解决这个问题可以按照下图方式修改:
这时警告便消失了,编译也没有错误了!