
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
28.07.2006, 23:49
|
|||
|---|---|---|---|
float to int в VC 2003 |
|||
|
#18+
Вот, в очередной раз напоролся на глюк конвертации float/double в int/long на VC 2003. И наконец заинтересовался, а кто-нибудь пробовал дизассемблировать эту мистическую функцию ftol2()? Что там конкретно делается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.07.2006, 22:40
|
|||
|---|---|---|---|
float to int в VC 2003 |
|||
|
#18+
Как выглядит глюк? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.07.2006, 10:08
|
|||
|---|---|---|---|
float to int в VC 2003 |
|||
|
#18+
White OwlИ наконец заинтересовался, а кто-нибудь пробовал дизассемблировать эту мистическую функцию ftol2()? Что там конкретно делается? Насколько я помню (давно это было) у сопроцессора есть такая команда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.07.2006, 10:46
|
|||
|---|---|---|---|
float to int в VC 2003 |
|||
|
#18+
Могу предположить, что глюк выглядит как пропадание дробной части. Я угадал ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.07.2006, 19:04
|
|||
|---|---|---|---|
float to int в VC 2003 |
|||
|
#18+
Нет, не угадали. Не видели что ли ни разу? Код: plaintext 1. 2. Но если пишешь под Win32 с использованием SDK линкер почему-то эту функцию в libc не находит. Сами микрософты предлагают решать эту проблему использованием опции компилятора -Qifist, которая вместо call __ftol2 будет делать fistp QWORD PTR tvXXX[esp+NN] . Но очень не рекомендуют, потому что поведение fistp зависит от настроек, а ftol2 якобы универсальная. Вот и хочется посмотреть на тот универсальный код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.08.2006, 11:57
|
|||
|---|---|---|---|
float to int в VC 2003 |
|||
|
#18+
А является ли такое присвоение идеологически правильным с позиции С++ ? Честно говоря.. давно не читал спецификации. Надо-бы освежить память. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.08.2006, 19:23
|
|||
|---|---|---|---|
float to int в VC 2003 |
|||
|
#18+
maytonА является ли такое присвоение идеологически правильным с позиции С++ ?Вполне. Ругнется варнингом на возможную потерю точности, но и только. В крайнем случае замени i=d; на i=(int)d; :) Проблема то в самой связке VC2003 и SDK. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=57&tablet=1&tid=2030748]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
37ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 201ms |
| total: | 333ms |

| 0 / 0 |
