之前在使用# include
定义y1变量时出现下列错误信息
error: previous declaration of ‘double y1(double)’
自动弹出 了 math.h库中的源码解释
CRTIMP double __cdecl j0 (double);
_CRTIMP double __cdecl j1 (double);
_CRTIMP double __cdecl jn (int, double);
_CRTIMP double __cdecl y0 (double);
_CRTIMP double __cdecl y1 (double);
_CRTIMP double __cdecl yn (int, double);
_CRTIMP double __cdecl chgsign (double);
所以问题出在 math.h 库中
我们能看到 以上变量被征用 ,所以在使用math.h定义时 不能使用上面变量
大佬给出的 解释
Function: double j0 (double x)
j0 returns the Bessel function of the first kind of order 0 of x. It may signal underflow if x is too large.
Function: double j1 (double x)
j1 returns the Bessel function of the first kind of order 1 of x. It may signal underflow if x is too large.
Function: double jn (int n, double x)
jn returns the Bessel function of the first kind of order n of x. It may signal underflow if x is too large.
Function: double y0 (double x)
y0 returns the Bessel function of the second kind of order 0 of x. It may signal underflow if x is too large. If x is negative, y0 signals a domain error; if it is zero, y0 signals overflow and returns -∞.
Function: double y1 (double x)y1 returns the Bessel function of the second kind of order 1 of x. It may signal underflow if x is too large. If x is negative, y1 signals a domain error; if it is zero, y1 signals overflow and returns -∞.
Function: double yn (int n, double x)yn returns the Bessel function of the second kind of order n of x. It may signal underflow if x is too large. If x is negative, yn signals a domain error; if it is zero, yn signals overflow and returns -∞.
来自 知乎 @ sin1080 的回答
自己翻译吧,哈哈哈哈哈哈
Bessel Functions: _j0, _j1, _jn, _y0, _y1, _yn 多看msdn
Bessel function - Wikipedia然后可以在这里找到具体的内容
来自知乎 @ vczh 的回答