Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > C++

Ответ
 
Опции темы
Старый 07.12.2011, 14:42   #1
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Вызов функций

double cos(double c){
double x=c;
if(
x>PI*2)x-=PI*2
int N 2*20;
double mx2 = -x*x;
 
    
int i;
    
double part 1sum 1;
    for (
2Ni+=2) {
        
part *= mx2/((i-1)*i);
        
sum += part;
    }
  return 
sum;
}
//синус,из косинуса
double sin(double x){return cos(((PI/2.0)-x));} 
Почему если вынести этот код в отдельный исходник,то sin перестаёт работать(машина виснит на нём)?а если в main.c,то всё нормально?
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 07.12.2011, 15:43   #2
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Вызов функций

отдельный исходник в отдельном проекте, в котором double cos(double) определено как
double cos(double n)
{
while(1)
{
}
}
???
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо HolyDel за это полезное сообщение:
Dream (07.12.2011), Mhyhr (08.12.2011)
Старый 07.12.2011, 16:14   #3
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Вызов функций

Сообщение от HolyDel Посмотреть сообщение
отдельный исходник в отдельном проекте, в котором double cos(double) определено как

???
Что?
__________________
Сайт: http://iexpo.ml
(Offline)
 
Ответить с цитированием
Старый 07.12.2011, 16:24   #4
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Вызов функций

ну исходя из твоего описания проблемы я смог стелепатировать только это. уточняй проблему. описывай подробнее. линкеру пофигу в каком файле твоя функция.
(Offline)
 
Ответить с цитированием
Старый 07.12.2011, 16:36   #5
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вызов функций

Может заголовок для этого файла не подключен к текущему?
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 07.12.2011, 16:48   #6
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Вызов функций

func.cpp
#include <cassert>

double func1(double val)
{
	return val+1;
}

double func1(int val)
{
	assert(0);

	return val+1;
}
main.cpp
#include <iostream>

#define USE_INT_FUNCTION

double func1(int);

#ifdef USE_INT_FUNCTION
double func2(double val)
{
	return func1(val-1);
}
#endif

double func1(double);

#ifndef USE_INT_FUNCTION
double func2(double val)
{
	return func1(val-1);
}
#endif

int main()
{
	std::cout<<func2(0.5)<<std::endl;

	std::cin.get();
}
вот еще один пример - в зависимости от того, закоментирован дефайн или нет, оно или падает или нет.
(Offline)
 
Ответить с цитированием
Старый 07.12.2011, 18:40   #7
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: Вызов функций

все объявления funс1 пеоенеси в начало, это вопервых самомуже не удобно наверное и походк на ассерте падает
(Offline)
 
Ответить с цитированием
Старый 07.12.2011, 19:27   #8
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Вызов функций

я показывал автору, почему перемещение функции из одного места в другое может изменить логику программы. и да, падает стопудово на ассерте
(Offline)
 
Ответить с цитированием
Старый 08.12.2011, 10:11   #9
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: Вызов функций

Сообщение от HolyDel Посмотреть сообщение
я показывал автору, почему перемещение функции из одного места в другое может изменить логику программы. и да, падает стопудово на ассерте
я протупил, думал ты спрашиваешь ))))
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 01:16.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com