相关疑难解决方法(0)

确定整数是否在具有已知值集的两个整数(包括)之间的最快方法

是否有比x >= start && x <= endC或C++ 更快的方法来测试整数是否在两个整数之间?

更新:我的特定平台是iOS.这是盒子模糊功能的一部分,它将像素限制为给定方块中的圆圈.

更新:在尝试接受的答案后,我在一行代码上以正常x >= start && x <= end方式执行了一个数量级的加速.

更新:这是来自XCode的汇编程序的after和before代码:

新方法

// diff = (end - start) + 1
#define POINT_IN_RANGE_AND_INCREMENT(p, range) ((p++ - range.start) < range.diff)

Ltmp1313:
 ldr    r0, [sp, #176] @ 4-byte Reload
 ldr    r1, [sp, #164] @ 4-byte Reload
 ldr    r0, [r0]
 ldr    r1, [r1]
 sub.w  r0, r9, r0
 cmp    r0, r1
 blo    LBB44_30
Run Code Online (Sandbox Code Playgroud)

老路

#define POINT_IN_RANGE_AND_INCREMENT(p, range) (p <= range.end …
Run Code Online (Sandbox Code Playgroud)

c c++ math performance

376
推荐指数
4
解决办法
6万
查看次数

如何检查整数是否在一个范围内?

有没有办法在不执行此冗余代码的情况下测试范围:

if ($int>$min && $int<$max)
Run Code Online (Sandbox Code Playgroud)

像一个功能:

function testRange($int,$min,$max){
    return ($min<$int && $int<$max);
}
Run Code Online (Sandbox Code Playgroud)

用法:

if (testRange($int,$min,$max)) 
Run Code Online (Sandbox Code Playgroud)

PHP有这样的内置函数吗?或者其他任何方式吗?

php int range

68
推荐指数
5
解决办法
13万
查看次数

标签 统计

c ×1

c++ ×1

int ×1

math ×1

performance ×1

php ×1

range ×1