下面的语句到底在做什么?
这让我很困惑。我很惊讶 C 允许您在if
语句中使用条件运算符。有没有更好的办法?
我发现语句中的条件运算符if
太混乱了。我可以尝试使用 && 和 || 运营商,但我担心我可能会犯错误。
如何将下面的语句重写为更简单的形式?
if ( (offset < 0) ?
( input->binData.bounds.lo >= (unsigned long)(-offset) ) :
( input->binData.bounds.hi < (unsigned long)(-offset) ) )
我在 BitHoist 开源包中找到了这行 C 代码。