2 回答

TA贡献1829条经验 获得超13个赞
你的^操作符使用错了,^操作符在C/C++里面是按位异或的意思,所以a^b的话,a和b都需要时整数才行,你的是double肯定不行了。不过我想你是想计算平方,C里面指数运算需要调用函数pow。
拓展:
1、C++这个词在中国大陆的程序员圈子中通常被读做“C加加”,而西方的程序员通常读做“C plus plus”,“CPP”。 它是一种使用非常广泛的计算机编程语言。C++是一种静态数据类型检查的、支持多重编程范式的通用程序设计语言。
2、它支持过程化程序设计、数据抽象、面向对象程序设计、泛型程序设计等多种程序设计风格。最新正式标准C++于2014年8月18日公布。其编程领域众广,常用于系统开发,引擎开发等应用领域,是至今为止最受广大程序员受用的最强大编程语言之一,支持类:类、封装、重载等特性!
3、C++这个词在中国大陆的程序员圈子中通常被读做“C加加”,而西方的程序员通常读做“C plus plus”,“CPP”。 它是一种使用非常广泛的计算机编程语言。C++是一种静态数据类型检查的、支持多重编程范式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、泛型程序设计等多种程序设计风格。

TA贡献1790条经验 获得超9个赞
sqrt至少定义了两个函数,
double sqrt(double x)
long double sqrt (long double x);
现在你的参数转换有两种,要自动转换成double或者long double,但是因为两个都可以转换,所以他就报错了。你强制转换成double后应该不会 报错。
Tbeam[j]+=d[i]/(sqrt((double)(1.0-(m0/(m0+Ubeam[j]))^2)*c));
- 2 回答
- 0 关注
- 703 浏览
添加回答
举报