《整数溢出实例与防范》由会员分享,可在线阅读,更多相关《整数溢出实例与防范(11页珍藏版)》请在金锄头文库上搜索。
整数整数溢出实例与防范Q1:什么是整数溢出?整数溢出将导导致“不确定性行为为”。比如完全 忽略该该溢出或终终止进进程。大多数编译编译 器都会忽略 这这种溢出,这这可能会导导致不确定或错误错误 的值值保存 在了整数变变量中。计计算机中整数都有一个宽宽度(例如 win7下VC6编译编译 器中int类类型为为32位)。当试图试图 保存一个比它可以表示的最大 值还值还 大的数时时,就会发发生整数溢出。常见见整型的表示范围围:一般超出范围会进行“回环操作”, 就像时钟一样。我们在VC6环境下 测试a+b(a和b均为无符号短整型):Q2:整数溢出的危害有哪些?导致无法预知的程序错误,甚至很难测 试出程序的这个BUG。 e.g. int m1, m2, m_max; cin m1 m2 m_max; if (m1 + m2 max) cout len2) 在使用变变量申请请内存,或者作为为数组组 下标时标时 ,注意对对越界的监测监测 。ThankYou!