问题标签 [cmath]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
10612 浏览

c++ - 为什么 std::sin() 和 std::cos() 比 sin() 和 cos() 慢?

测试代码:

这是时间:

添加后using namespace std;,时间为:

编译器:

集会:

0 投票
0 回答
9162 浏览

visual-studio - cmath 在 Visual Studio 2010 (ANSI C) 中生成语法错误

我必须做一些纯 ANSI C,我正在尝试在 Visual Studio 2010 中做。问题是;无论将编译器设置为纯 C 并翻转 \Za 编译器开关以禁用 Windows 扩展 - 代码都不会编译:

这是在一个名为 Test.c 的文件中 - 没有预编译的头文件,一切都应该没问题,但这就是编译器吐出的内容:

我对 VS 和 C 没有那么丰富的经验,但我环顾四周,似乎没有任何工作。我猜这会是一件愚蠢的事情。提前致谢

(注意:同样的错误发生在绝对没有引用任何数学库的情况下)

0 投票
6 回答
5311 浏览

c++ - 仅使用库中的某些功能?

我只想使用 math.h 中的某些函数(不包括整个库)

例如,我需要使用“sqrt”和“exp”,但我有名为“y1”(可能还有其他)的变量与 math.h 中的定义冲突

我怎样才能只使用像这样的库中的某些功能?

我试过

但这没有用,我以前见过类似的东西

我想,所以我认为它可能会起作用。

有任何想法吗?

0 投票
4 回答
2743 浏览

c++ - C++ 数学库的三角函数的结果不正确

我目前正在从事一个我已经做了近一年的个人项目。我正在尝试将其移植到已成功的 Windows 环境。因为我正试图尽快向人们推出 Windows 版本,所以我决定继续在 Windows 中进行开发,同时尝试添加新功能并解决已经存在数月的错误。最近尝试添加严重依赖三角函数的功能时,我发现所有 3 个三角函数,奇怪的是,无论我传递的参数如何,都返回相同的值 (1072693887)。可以想象,这会导致系统中出现一些相当奇怪的错误。

我包含了 math.h,据我所知,没有其他文件包含此函数。(也许有一个调试器命令可以找到定义符号的位置?我找不到任何这样的东西,但也许我错过了一些东西。)我试过在其他地方询问并在谷歌上搜索,但无济于事......

有没有其他人听说过这个问题,或者知道如何解决它?

0 投票
1 回答
5330 浏览

c++ - 数学接口与 C++ 中的 cMath

我的构建系统 MacOS 10.6.3 上用于 POSIX 数学库的接口是 math.h,但是在我的目标系统上,接口文件的名称是 cmath.h。在学校我们使用 cmath,我想确保我的项目在提交时可以编译,这是如何实现的。学校的服务器和工作站是运行 Windows XP 的 x86。GCC 在两个平台上都可用。

0 投票
2 回答
4265 浏览

android - 使用时生成问题使用安卓 ndk

我有一个stlTest2.cpp像这样的简单文件:

我正在移植的一些代码中有一些更复杂的东西。我的问题是这个。为什么在 NDK 之外使用 GCC 构建时这会起作用,但在使用 NDK 时不起作用?它给出的错误是这样的:

直接原因是math.h(包括 via <cmath>)定义isnan为宏。为什么 ndk 之外的构建不包括#definefrom math.h,但这是?如果我注释掉代码中的包含,一切都很好,但这是不可接受的,因为这个问题会反复出现......很多。

0 投票
1 回答
956 浏览

c++ - ` 缺少模板` VS 2010 中的标题

我刚刚注意到,Visual Studio 2010 附带的 c++ 标准库版本中缺少由c++11 标准[26.8 c.math]规定的标头模板。<cmath>

特别是我一直在寻找 std::signbit 但在 msdn 上的搜索证实了我在随附的标头中看到的内容(即,一系列仅导入“旧”C 名称的 using 指令)。我不记得阅读过这种与标准的偏差,也没有在 msdn 文档中明确指出。

获得缺失功能的最佳解决方法是什么?

在 Visual Studio 的未来版本中是否有一些关于修复此问题的官方沟通?

编辑 我所指的标准版本已经过时,所以我声称不完整是不正确的。仍然缺少符号位,但它不是模板,而是重载函数。感谢@Xeo 的澄清。

0 投票
1 回答
322 浏览

c++ - 将很多符号表达式从 x^2 或 x^3 转换为 pow(x,n)

我有很多带有电源符号的符号表达式,我想在 C++ 程序中复制它们。但是,它们具有^C 中未使用的电源符号。对于快速进行更改有什么建议吗?^我应该使用 i can make gcc to see as的正则表达式pow()吗?

0 投票
1 回答
293 浏览

c++ - 没有 C 标准库,有没有更好的方法来查找任何数字的日志?

我必须创建一个程序来计算任何数字的对数和任何数字对任何基数的对数,而无需使用cmath. 我已经成功地使用幂级数方程方法创建了一个原型程序,但我还需要创建一个数字检查。我的导师说,如果数字大于 10,则将数字与其最大值 10 分开,x并通过log(x) + log(y)wherex是 1 和 10 之间的数字以及y数字 10来计算对数x

我已经为高达 1000 的数字编写了它,但是使用cmath它的程序可以达到 10 208,所以我想知道是否有更有效的方法来计算日志?

0 投票
6 回答
2284 浏览

c++ - 在库中定义常量变量 pi

所以我正在编写一个库,我想定义一个具有 pi 值的常量。我正在考虑定义一个 static const float pi = 3.14; 在 pi.h 文件中。

但是,我几乎可以肯定这不是这样做的方法,因为我已经读过你不应该在头文件中定义变量。

我认为的另一种方法是声明一个返回 pi 值的内联函数,但这很难使用。

另一种方法(我认为)是把它放在 pi.cc 编译到库中,然后使用 extern static const float pi; 在您使用 pi 的任何文件中,当然也可以将这些文件与库链接。

这样做的最佳方法是什么?标准库可能会定义一个宏,但我认为常量更好。