在 Apple 创建的代码中,有这样一行:
CMTimeMakeWithSeconds( newDurationSeconds, 1000*1000*1000 )
是否有任何理由将 1,000,000,000
表示为 1000*1000*1000
?
为什么不用1000^3
?
最佳答案
以乘法方式声明常量的一个原因是为了提高可读性,同时不影响运行时性能。 此外,表明作者正在以乘法的方式思考数字。
考虑一下:
double memoryBytes = 1024 * 1024 * 1024;
明显优于:
double memoryBytes = 1073741824;
因为后者乍一看不像 1024 的三次方。
正如 Amin Negm-Awad 提到的,^
运算符是二进制 XOR
。许多语言缺乏内置的编译时取幂运算符,因此没有乘法。
关于objective-c - 为什么在 C 中将 1,000,000,000 写为 1000*1000*1000?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40633059/