Перейти к содержанию
    

А есть ли в стандартной библиотеке C, конкретно, в Keil, определение PI? Я могу и сам задать, но...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ответа не знаю. Всегда задавал сам как константу. Сейчас пришла мысль, что можно задать как глобальную переменную и посчитать при инициализации в начале main()

 

pi_const = 6*arcsin(0.5);

Высокая точность и не надо никаких цифер запоминать.

 

Но это только если надо libm подключать. В остальных случаях лучше задать как константу.

 

 

Поиск в гугле дал такой ответ:

http://www.nongnu.org/avr-libc/user-manual..._avr__math.html

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если мне нужно PI, то и sin cos я использую, библиотеку <math.h> подключаю. :rolleyes:

Только странно вычислять PI для того, чтобы потом использовать.

Знаю, что в библиотеках под Windows число PI имеется. Что же здесь так убого?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мдя... читать доки не модно стало...

В math.h определен #define M_PI

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В math.h определен #define M_PI

Нема такого!

Конкретно, в Keil.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если мне нужно PI, то и sin cos я использую, библиотеку <math.h> подключаю. :rolleyes:

Только странно вычислять PI для того, чтобы потом использовать.

Знаю, что в библиотеках под Windows число PI имеется. Что же здесь так убого?

 

Я линк потом дбавил. Посмотрите его.

 

Только странно вычислять PI для того, чтобы потом использовать.

 

Я просто поделился идеей. Возможно вам она не понравится.

 

Знаю, что в библиотеках под Windows число PI имеется. Что же здесь так убого?

 

Есть множество разных компиляторов и в каждом есть маленькие отличия. Я бы не сказал, что убого. Наоборот изобилие. Это в Виноус убого. Один единственный компилятор :)

 

Потом есть много разных библиотек, которые можно подключать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А есть ли в стандартной библиотеке C, конкретно, в Keil, определение PI? Я могу и сам задать, но...

в

<math.h>

M_PI

ну и бибилиотека libm ес-сно

 

upd : я еще удивился, что такая тема и неотвечена, а пока отвернулся от кнопок на пару минут - вот оно как вышло :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

upd : я еще удивился, что такая тема и неотвечена, а пока отвернулся от кнопок на пару минут - вот оно как вышло :)

Как же "отвечена", если в Keil нет ни PI, ни M_PI, ни libm?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

дарю :),

...

пользуйтесь на здоровье

От моего стола - вашему:

#define PI 3.1415926535897932384626433832795L

По-моему, у меня PI длиннее :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

в double всё равно больше 16 знаков дестичных не лезет, так что только зря байты переводите.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть множество разных компиляторов и в каждом есть маленькие отличия. Я бы не сказал, что убого. Наоборот изобилие. Это в Виноус убого. Один единственный компилятор :)

Ниправельна!

typedef float fpu_type;
//typedef double fpu_type;
static inline fpu_type const_pi(void)
{
return (6*arcsin(0.5));
}

 

Шутка. Но в ней намек: если по каким-то причинам компилер тупит, и кривость рук тутто ни при чем, возможны варианты.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

в double всё равно больше 16 знаков дестичных не лезет, так что только зря байты переводите.

Зато в C# в формат decimal лезет больше.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как же "отвечена", если в Keil нет ни PI, ни M_PI, ни libm?

а хидер <math.h> есть? может сам код воткнули не туда. по моему в keil-е не так все плохо, чтобы без флоатов/с нестандартными флоатами жить

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а хидер <math.h> есть? может сам код воткнули не туда. по моему в keil-е не так все плохо, чтобы без флоатов/с нестандартными флоатами жить

Хидер в Кейле есть. И к проекту подключен.

Флоаты к делу не относятся.

math.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...