将整数与范围进行比较
Comparing integer to a range
有没有一种简单的方法来查看整数是否落在范围内?
喜欢
int x = 15;
if(x==1x)
{
std::cout << "Yes it falls in the range 10-19" << std::endl;
}
据我了解,最接近的是
((x>9) && (x<20))?(std::cout << "Yes" << std::endl):(std::cout << "No" << std::endl);
或类似的东西。
有没有像第一种方法?
不,除了您拥有的第二个版本之外,没有其他方法。
如果你要做一个包含的范围,我会使用>=
和<=
,因为(在我看来)它更适合范围检查。但是,C++没有聪明的方法可以使用if
或?:
和&&
表达式检查条件以外的范围。
相关文章:
- 比较并显示使用最小值(a,b)和最大值(a、b)升序排列的4个数字
- 为什么在全局范围内使用"extern int a"似乎不行?
- 为什么比较运算符如此快速
- 尝试通过多个向量访问变量时,向量下标超出范围
- 我可以使用 g++ 进行三种比较 (<=>) 吗?
- 错误:未在此范围内声明'reverse'
- 正在将指针转换为范围
- 使用std::transform将一个范围的元素添加到另一个范围中
- C++,"由于数据类型范围有限,比较总是正确的"
- 矢量下标超出范围;比较矢量元素
- 是对范围的指针定义明确的比较
- 未在范围内声明 - priority_queue C++的友元比较器类
- C++是否有指定值范围的比较运算符?(比如'in' E语言)?
- 将整数与范围进行比较
- 比较迭代器value_type范围构造函数
- 是否有使用谓词比较两个范围的标准方法
- GCC:由于数据类型范围有限,比较始终为真 - 在模板参数中
- 由于数据类型的范围有限,比较总是错误的
- 为什么在汇编代码中比较一个在范围内的数字时会发生分支
- 范围和双重比较