c - 最佳代码实践验证 - C

标签 c

有一些我需要执行验证的变量。伪代码如下,但我觉得一定有更优雅的解决方案。

  If ( var != A || var != B || var != C || var != D )
        {
        reject
        }
    else if ( var == A || var == B)
        {
        do validation applicable to A or B
        }
    else if ( var == A || var == B || var == C || var == D )  
        {
        do validation applicable to all valid vars
        }

最佳答案

原始伪代码不正确,因此我对所需的行为做出了一些合理的假设。

// If var not equal to any of A,B,C or D...
if ( var != A && var != B && var != C && var != D ) 
{
    reject
}
// Otherwise var equal to one of A,B,C or D
else
{
    // If it is A or B...
    if( var == A || var == B )
    {
        do validation applicable to A or B
    }

    do validation applicable to all valid vars
}

或者您可以按如下方式翻转逻辑:

// If var equal to one of A,B,C or D
if( var == A || var == B || var == C || var == D ) 
{
    // If it is A or B...
    if( var == A || var == B )
    {
        do validation applicable to A or B
    }

    do validation applicable to all valid vars
}
else
{
    reject
}

这可能更清楚。

关于c - 最佳代码实践验证 - C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9127012/

相关文章:

c# - 如何从 C# 调用由 Kotlin/Native 生成​​的 native C 库中的函数?

c - 添加 gets() 函数后 printf() 语句的输出未正确显示

c - 在存储预定义类的 Objective C 中?

c - 将 printf 语句分配给 int 变量

c - NASM 堆栈错误?简单的乘法程序

c - 如何构建 sqlcipher?

c - 如何检查C语言输入的数据是否正确

c - c语言中的隐式int

c - 如何创建一个简单的驱动程序? [乌类图]

c++ - 遇到空格时如何停止阅读一行?