【发布时间】:2020-04-16 17:06:10
【问题描述】:
我正在通过一些 C++ 代码来确定它是如何运行的(我自己还不太了解该语言),我遇到了一些看起来像这样的行:
bw = 2.*ti/3.; rorq = ((bw/to)**(1./q));
代码使用.*ti 而不是*ti 有什么特别的原因吗?和变量有关系吗?
【问题讨论】:
-
我建议不要通过 c++ code 来学习这门语言。尤其是带有变量名称的代码,如
bw和ti。尝试一个好的c++ book。 -
虽然至少有一种语言我记不得了,它使用
.*进行元素乘法,但 C++ 没有这样的东西。 -
C++ 中没有运算符
**。一个*用于乘法,另一个用于取消引用。但是表达式(1./q)不是指针,所以这个表达式是无效的。 -
我必须通过代码,不幸的是我没有时间正确学习c++。还不错,我一直在使用 cplusplus.com 解决我的大部分问题,并且效果很好,但我不知道 ./ vs. / 的原因,我也弄清楚了变量的含义所以这不是问题
-
让我们添加一些空格来澄清表达式:
bw = 2.0 * ti/3.0;“.”用数字 2 解析以表示浮点数。这一切都与解析表达式时的运算符优先级有关。同样,另一个表达式应该是(1.0 / q)。还要查一下整数除法和浮点除法的区别。
标签: c++ variables logic operators division