前端之家收集整理的这篇文章主要介绍了
检查C中的下溢/溢出?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否有一种检查给定数据类型(uint32,int等)的溢出或下溢的一般
方法?
我在做这样的事情:
uint32 a,b,c;
... //initialize a,c
if(b < c) {
a -= (c - b)
}
当我打印一个迭代后,它显示一个大的数字,如:4294963846.
检查算术中的溢出/下溢检查结果与原始值相比较.
uint32 a,b;
//assign values
uint32 result = a + b;
if (result < a) {
//Overflow
}
对于您的具体检查将是:
if (a > (c-b)) {
//Underflow
}
原文链接:https://www.f2er.com/c/115023.html