Operator ^(乘方)
- 来源: https://www.freebasic.net/wiki/wikka.php?wakka=KeyPgOpExponentiate
- 最后更新: 2022-08-07
将数值表达式提升到某次幂
语法
declare operator ^ ( byref lhs as double, byref rhs as double ) as double用法
result = lhs ^ rhs参数
lhs
左侧底数表达式。
rhs
右侧指数表达式。
返回值
返回底数表达式提升到某次指数的幂运算结果。
描述
Operator ^(乘方)返回底数表达式(lhs)提升到某次指数表达式(rhs)的结果。^ 仅适用于双精度浮点数,其他类型的操作数在执行乘方运算之前将被转换为 double。分数值的指数(1/n)等同于对底数取第 n 次方根,例如,2 ^ (1/3) 是 2 的立方根。
两个操作数均不会以任何方式被修改。
此运算符可以为用户定义类型重载。
此运算只适用于 double 精度数据类型(53 个有效位),在数字的最低有效位上存在一些不精确性,尤其是在从其他数据类型(例如 64 位数据类型)转换时。当预期结果为精确数字,但发现结果偏差了一个很小的量时,这种不准确性尤为明显。出于这个原因,永远不要假设乘方表达式将恰好等于期望值,而应该接近在某个小误差范围内。使用 Int 和 Fix 等舍入方法时要谨慎:如果预期结果是整数值,则有可能结果略低,会向下舍入到比预期小一的值。
此运算符在 C/C++ 中存在但含义不同;在 C/C++ 中,它执行按位 Xor。
示例
start GeSHi
vb
Dim As Double n
Input "Please enter a positive number: ", n
Print
Print n;" squared is "; n ^ 2
Print "The fifth root of "; n;" is "; n ^ 0.2
Sleepend GeSHi
输出:
Please enter a positive number: 3.4
3.4 squared is 11.56
The fifth root of 3.4 is 1.27730844458754方言差异
- 在 -lang qb 方言中,此运算符不能被重载。
与 QB 的区别
- 无
参见
返回 目录