当需要编写一个bool函数,用来判断是否超过最大int或者最小int输入,如何编写?
#include <climits>中设定有常量INT_MAX和INT_MIN
提醒用户输入, 并判断给定的数字是否出界,在 INT_MIN~~INT_MAX范围内返回ture,否则返回false
假如是你,你会怎么编写?
bool is_int (double x)
{
if (x <=INT_MAX && x>= INT_MIN)
return ture;
else
return false;
}
如果给读取的int值程序输入一个过大的值,很多C++ 实现只是将这个值截短为合适的大小,并不会通知丢失了数据!
上面编写输入为double,double类型的精度足以储存典型的int值,且范围更大。
另一种选择是使用long long来储存输入。
这里考察的是容错思想,用户输入总有不可思议的地方,如何事先规避才是王道!

本文探讨了在C++中如何编写bool函数,用于判断输入是否超出int类型的最大或最小值。通过使用<climits>中的INT_MAX和INT_MIN常量,确保数值在有效范围内,避免数据溢出。同时讨论了使用double和long long作为输入类型的优势。
75万+

被折叠的 条评论
为什么被折叠?



