SINCOS - Linux手册页

时间:2019-08-20 18:01:20  来源:igfitidea点击:

Linux程序员手册 第3部分
更新日期: 2020-06-09

名称

sincos,sincosf,sincosl-同时计算sin和cos

语法

#define _GNU_SOURCE         /* See feature_test_macros(7) */
#include <math.h>

void sincos(double x, double *sin, double *cos);
void sincosf(float x, float *sin, float *cos);
void sincosl(long double x, long double *sin, long double *cos);

与-lm链接。

说明

几种应用需要相同角度x的正弦和余弦。这些函数同时计算两者,并将结果存储在* sin和* cos中。与对sin(3)和cos(3)的两个单独调用相比,使用此函数可能更有效。

如果x为NaN,则以* sin和* cos返回NaN。

如果x为正无穷大或负无穷大,则会发生域错误,并且在* sin和* cos中返回NaN。

返回值

这些函数返回void。

错误说明

有关如何确定调用这些函数时是否发生错误的信息,请参见math_error(7)。

可能会发生以下错误:

Domain error: xis an infinity
errno设置为EDOM(但请参阅BUGS)。引发了无效的浮点异常(FE_INVALID)。

版本

这些功能首先出现在2.1版的glibc中。

属性

有关本节中使用的术语的说明,请参见attribute(7)。

InterfaceAttributeValue
sincos(),sincosf(),sincosl()Thread safetyMT-Safe

遵循规范

这些功能是GNU扩展。

备注

要查看sincos()的性能优势,可能有必要使用以下标志来禁用gcc(1)内置的优化功能:

cc -O -lm -fno-builtin prog.c

BUGS

在版本2.22之前,发生域错误时,glibc实现未将errno设置为EDOM。

另外参见

cos(3),sin(3),tan(3)

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/