c – 如何简单地将单个变量与许多不同的值进行比较?

前端之家收集整理的这篇文章主要介绍了c – 如何简单地将单个变量与许多不同的值进行比较?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我知道你可以写一个如下声明:
if (num1 != a && num1 != b && num1 != c ..........&& num1 != z)
   (do something);

但有没有更简单的方法来比较num1变量和26个其他变量?有点像:

if (num1 != a,b,c,d,e,f,g.......)
   (do something);

解决方法

如果a..g是连续的常量/枚举值,那么只需使用范围检查.
if (num >= a && num <= g)
{
    do_something();
}
else
{
    do_something_else();
}

如果它们是非连续但不变的,则可以使用switch语句.

switch (num)
{
    case a:
    case b:
    case c:
    case d:
    case e:
    case f:
    case g:
        do_something();
        break;

    default:
        do_something_else();
        break;
}

否则,如果它们只是任意变量或表达式,那么您可能只需要进行多次测试.

猜你在找的C&C++相关文章