Doresc să folosesc constanta PI și funcțiile trigonometrice într-un program C++. Obțin funcțiile trigonometrice cu include <math.h>
. Cu toate acestea, nu pare să existe o definiție pentru PI în acest fișier header.
Cum pot obține PI fără să-l definesc manual?
Pe unele platforme (în special cele mai vechi) (vezi comentariile de mai jos) s-ar putea să fie nevoie să
#define _USE_MATH_DEFINES
și apoi să includeți fișierul de antet necesar:
#include <math.h>
iar valoarea lui pi poate fi accesată prin:
M_PI
În math.h
al meu (2014) este definit ca:
# define M_PI 3.14159265358979323846 /* pi */
dar verificați math.h
pentru mai multe. Un extras din "old" math.h
(în 2009):
/* Define _USE_MATH_DEFINES before including math.h to expose these macro
* definitions for common math constants. These are placed under an #ifdef
* since these commonly-defined names are not part of the C/C++ standards.
*/
Cu toate acestea:
pe platformele mai noi (cel puțin pe Ubuntu 14.04 pe 64 de biți) nu trebuie să definesc _USE_MATH_DEFINES
.
Pe platformele Linux (recente) există și valori long double
furnizate ca extensie GNU: