c++ - 错误 2296 : '^' : illegal , 左操作数的类型为 'double'

标签 c++ visual-studio visual-studio-2012 compiler-errors operands

我的部分代码:

double function (double x)
{
   f = x^5-3*x^4+3*x^3-2*x^2-5;
   return f;
}

问题:这部分代码出现以下错误:

  • 错误 C2296:“^”:非法,左操作数的类型为“double”
  • 错误 C2297:“^”:非法,右操作数的类型为“double”

我的目标:我正在编写代码以在 C++ Visual Studio 2012 中查找以下多项式的根: enter image description here

我不知道如何解决这个错误,因为我正在学习 C++,这是我第一次遇到这个错误。只有两个上述错误;我的其余代码没有错误。非常感谢您的帮助。谢谢!

最佳答案

C/C++ 中的 ^ 运算符不是指数运算符(默认情况下)——它是按位异或运算符,不适用于 double 。

相反,使用 pow功能。

关于c++ - 错误 2296 : '^' : illegal , 左操作数的类型为 'double',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25858839/

相关文章:

c++ - gcc '-rdynamic' 标志等同于 MSVC

javascript - 有没有一种方法可以在两个 AngularJS Web 解决方案与 Visual Studio 之间共享 javascript 代码?

visual-studio - 如何在Visual Studio emacs 模式下禁用Tab 键绑定(bind)的 "smart insert"函数?

c++ - 不理解 sscanf_s 行为

c# - 如何在VS2012中安装VS2013扩展包

c++ - 确保谓词函数在 C++ 模板函数中有效

python - 我如何有效地将 2d python 列表提供给 C++ 扩展模块

c++ - Unresolved external 模板

c++ - 如何忽略参数包参数

c++ - 转换运算符重载歧义,编译器不同