【发布时间】:2015-07-13 07:42:47
【问题描述】:
除了在 if 中使用 if 分支来检查并满足所有必需条件之外,还有其他好的解决方案吗?像这样写的代码看起来有点大,我想减少代码大小,但要适合我的需要。
if(a>0 && b>0 && c>0)
{
if(a==d && b==e && c==f)
{
if(a<FIELD_HEIGHT && b<FIELD_WIDTH)
{
if(true)
{
}
}
}
}
【问题讨论】:
-
您正在寻找的术语是减少 嵌套,而不是代码大小(这意味着编译器生成的机器代码更少)。答案很大程度上取决于
if语句块内发生的情况,只有更多if语句或其他内容? -
@JoachimPileborg 是的,如果可能的话,我需要避免这么多的 if 语句。但在我的情况下,我有 3 个不同的组来检查不同的东西,当我编写所有这些组时,它对我来说看起来很大,这就是我想要减少代码大小的原因。
-
还有一点数学可能会有所帮助:en.wikipedia.org/wiki/Boolean_algebra
-
这些变量是
signed还是unsigned?或者不太具体,它们是如何定义的?
标签: c if-statement coding-style