реклама на сайте
подробности

 
 
> Ошибк при передаче значений переменной в функцию
Vladimir_T
сообщение Apr 26 2014, 03:52
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 517
Регистрация: 7-02-06
Пользователь №: 14 073



Здравствуйте, подскажите, пожалуйста... Странная ситуация, не должно быть так, но у меня то есть....
Мне нужно быстро вычислять значения функции синус, для чего стал использовать разложение в степенной ряд,
первым членом ограничился. Стал отлаживать, а функция постоянно мне выдает бесконечно малую величину, стал смотреть отладчиком в Кейле 5.4, в самой функции и вижу, что в функцию постоянно передается значение
X = 1.084202e-019, тогда, как передаются значения от 0 до pi/4. Никаких вложенных прерываний, чтобы стек нарушался - нет. Где моя ошибка? Подскажите, пожалуйста!

Код
#define  Factr_3  0.0556

float Rough_Sinus (float X)
{float Ret = X - X*X*X / Factr_3;
return Ret;
}
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Golikov A.
сообщение Apr 27 2014, 06:05
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



я обычно отлаживал сообщениями в порт, просто так привык. Но тут на фирме были жетаги и я решил воспользоваться чем то новым. А делали они автономные мобильные высоковольтные лаборатории, в общем отлаживал я в слабоотапливаемом гараже, под высоким напряжением, без интернета под рукой... И код, который прыгает со строчки на строчку, а при передачи в него 5 получает 7, на выход выдает 12.5 а на экранчике отображает -6.28.... я уже начал верить в тайные знаки, и в какую то беду 28 июня и так далее... намерзся, все проклял, и зарекся использовать жетаг. Сейчас я знаю в чем загвоздка, и иногда отлаживаю жетагом, но история был запоминающаяся....


Цитата
Прототип описан в .h - файле. Компиляция идет без ошибок.


да, надо еще проверить что функция в сишнике соответствует описанию в ашнике, потому что иначе кеил еще любит не известные параметры считать int32_t. То есть если вы создали функцию, объявили в ашнике, а потом изменили объявление в сишнике, что-то добавили, то в другом месте при вызове этой функции что-то может пойти не так, правда будет варнинг про неявное объявление...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 5th August 2025 - 00:44
Рейтинг@Mail.ru


Страница сгенерированна за 0.01359 секунд с 7
ELECTRONIX ©2004-2016