forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   C++ (http://forum.boolean.name/forumdisplay.php?f=22)
-   -   pow:Domain error (http://forum.boolean.name/showthread.php?t=6648)

impersonalis 06.10.2008 00:24

pow:Domain error
 
Заупстили работающий в Visual Studio 6 код в Builder-е от борланда.
Мало того, что у Строителя иная логика расстановки includ-ов, дык дальше: функция pow стала при малом занчении возводимого в степень аргумента плодить форточки с мессагой pow:Domain error. При этом сама программа продолжала работать, а частота форточкообразования ограничивалась лишь частотой вызова функции pow.
Простейшая коррекция типа:
Цитата:

if(!a)return 0;
return pow(a,b);
решает пробелему.
Либо лыжи не едут, либо я слишком умный.
У меня один вопрос:
WTF?! о.O
хотелось бы услышать ваше мнение по этому поводу.

SBJoker 06.10.2008 00:29

Ответ: pow:Domain error
 
всё очень просто, читайте историю образования и развития с++, там со стандартами околесица. У MS своя стратегия развития языка у Borland своя, обе не соответствуют соглашению ANSI. Потому есть небольшие отличия.

alcoSHoLiK 06.10.2008 00:30

Ответ: pow:Domain error
 
pow - это библиотечная функция. Библиотеки пишут разработчики компиляторов.

impersonalis 06.10.2008 00:33

Ответ: pow:Domain error
 
Никакой концепцией оправдать форточку при попытке возвсети 0 в степень - нельзя! Не-не-не, Девид Блейн!
Мож они ещё на примерах типа x=y+0 будут мне окошками флудить?

SBJoker 06.10.2008 00:47

Ответ: pow:Domain error
 
настройки компилера посмотри, мож там оно вырубается крыжиком

impersonalis 06.10.2008 01:03

Ответ: pow:Domain error
 
Цитата:

Сообщение от SBJoker (Сообщение 87849)
настройки компилера посмотри, мож там оно вырубается крыжиком

надеюсь

impersonalis 25.05.2011 00:01

Ответ: pow:Domain error
 
Ну чо-чо там с настройками-то?
Билдер боится неоднозначности pow(0,0)?

Reizel 25.05.2011 01:21

Ответ: pow:Domain error
 
О, у меня такая же проблема была, когда на BC писал курсач:)
дебаги показали, что pow(-7,-7) работает, pow(0,0) тоже, в общем любые сочетания, кроме похожих на
pow(-6.9999999977,-6.999999955).
В чем фэйл, я не знаю, и разобраться не смог. :(


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot