Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » ошибка QNAN

Страниц (2): [1] 2 »
 

1. AdryV - 07 Марта, 2019 - 05:01:20 - перейти к сообщению
CODE:
int k=9999999999999999999999999999999999999999999;
double f=1.46519781597847999;

k=-1;

if(k!=f)messagebox(f);


этот нюанс заметил только у double, с int все впорядке

не могли бы добавить если значение большее что бы программа сама его обрезала... а не вылетела ошибка QNAN....
(Добавление)
также после этого кода при закрытии среды кибор летит крит ошибка
2. Kibor - 07 Марта, 2019 - 05:11:12 - перейти к сообщению
Нет. Это проблема программиста следить за правильными данными.
3. AdryV - 07 Марта, 2019 - 05:14:37 - перейти к сообщению
 Kibor пишет:
Это проблема программиста следить за правильными данными.

эммм нестыковка....
у меня бот читает из памяти процесса данные.... и иной раз может вылететь эта прелесть.....
как я могу проверить что данные с процеса считаны верно если при проверке вылетает ошибка???????? Не понял
(Добавление)
чель все расчеты координат переделывать на int ? ??? Непонял!
(Добавление)
значит ошибка может быть тут
но я ее не вижу......
CODE:
function r_mem_kord(int adress)
{
if(readmemory(#xp[0], 4, adress, prc)!=0) {
perevernut_masiv();
return codhexd(#xpp[0]);
}
return 0;
}
//
function perevernut_masiv()
{
xpp[0]=xp[3];
xpp[1]=xp[2];
xpp[2]=xp[1];
xpp[3]=xp[0];
}

(Добавление)
или же ошибка всетаки у вас.
4. Kibor - 07 Марта, 2019 - 05:30:12 - перейти к сообщению
 AdryV пишет:
у меня бот читает из памяти процесса данные.... и иной раз может вылететь эта прелесть.....

Эту прелесть генерирует не Кибор. Следить за этим тоже кибор не должен. Так же как не следит любой другой язык (программа).
максимум что может быть записано в 4 байтах это
FFFFFFFF то есть 4294967295
что прекрасно влазит в double
Не пихайте более 4 байт (это и не надо) и все будет норм.
5. AdryV - 07 Марта, 2019 - 05:32:53 - перейти к сообщению
 Kibor пишет:
Не пихайте более 4 байт (это и не надо) и все будет норм.

как я могу что то пихать больше 4 байт если все действия делает непосредственно ваша функция?
6. Kibor - 07 Марта, 2019 - 05:38:11 - перейти к сообщению
 AdryV пишет:
как я могу что то пихать больше 4 байт если все действия делает непосредственно ваша функция?

Если вы хотите получить помощь, то стоит начинать с выкладывания своего запускаемого полностью кода, а не пытаться спровоцировать меня искать ошибки в программе. Будьте уверены, если они там найдутся я их устраню.

В данный момент я дал ответ на ошибочный выложенный вами код
 AdryV пишет:
int k=9999999999999999999999999999999999999999999;
double f=1.46519781597847999;

k=-1;

if(k!=f)messagebox(f);

И указал на ошибку и что и как надо делать что бы избежать QNAN
7. AdryV - 07 Марта, 2019 - 05:39:03 - перейти к сообщению
 AdryV пишет:
как я могу проверить что данные с процеса считаны верно если при проверке вылетает ошибка????????

и вы не ответили.....
(Добавление)
 Kibor пишет:
а не пытаться спровоцировать меня искать ошибки в программе

хорошо....
все ясно...
(Добавление)
 Kibor пишет:
if(k!=f)messagebox(f);

да и вообще вы хотя бы пробовали комментировать эту строку?
(Добавление)
 Kibor пишет:
И указал на ошибку и что и как надо делать что бы избежать QNAN

вы не указали. и не уточники по какой причине ваша функция может получить результат который превышает допустимую вместимость доубе
8. 007wan - 07 Марта, 2019 - 05:45:35 - перейти к сообщению
 AdryV пишет:
if(k!=f)messagebox(f);
Разве не
CODE:
if(k!=f)messagebox(format(f));
?
9. AdryV - 07 Марта, 2019 - 05:47:16 - перейти к сообщению
 007wan пишет:
?

без разници если не выполнять сравнение не будет крит ошибки и QNAN
10. Kibor - 07 Марта, 2019 - 05:48:37 - перейти к сообщению
 AdryV пишет:
вы не указали. и не уточники по какой причине ваша функция может получить результат который превышает допустимую вместимость доубе

Я довольно точно уточнил в чем ошибка в коде который был выложен первым.
Предсказанием не занимаюсь что бы догадываться что и как там потом используется.

Выкладывайте вовремя четкие вопросы и получите четкие на них ответы.

Powered by ExBB FM 1.0 Final