Closed Vagrant2001 closed 10 months ago
ошибка заключается в неправильном преобразовании в функции FB_64str в ней съедаются нули при определенных числах
пример числа: "-1002000000001" или "-1002075021034" на выходе получается -10021 или -100275021034
пример кода и выдача результата:
String tmp_str = "-1002000000001"; //"-1002075021034" int64_t tmp_groupid = FB_str64(tmp_str); webdebugprinttime("tmp_str = " + tmp_str); webdebugprinttime("tmp_groupid = " + String(tmp_groupid)); webdebugprinttime("FB_64str = " + FB_64str(tmp_groupid));
/* Вывод: 2024.02.03 10:38:34 (00:00:00.000): FB_64str = -100275021034 2024.02.03 10:38:34 (00:00:00.000): tmp_groupid = -1002075021034 2024.02.03 10:38:34 (00:00:00.000): tmp_str = -1002075021034
2024.02.03 10:43:19 (00:00:00.001): FB_64str = -10021 2024.02.03 10:43:19 (00:00:00.000): tmp_groupid = -1002000000001 2024.02.03 10:43:19 (00:00:00.001): tmp_str = -1002000000001 */
поправил, спасибо
ошибка заключается в неправильном преобразовании в функции
FB_64str в ней съедаются нули при определенных числах
пример числа: "-1002000000001" или "-1002075021034" на выходе получается -10021 или -100275021034
пример кода и выдача результата:
String tmp_str = "-1002000000001"; //"-1002075021034" int64_t tmp_groupid = FB_str64(tmp_str); webdebugprinttime("tmp_str = " + tmp_str); webdebugprinttime("tmp_groupid = " + String(tmp_groupid)); webdebugprinttime("FB_64str = " + FB_64str(tmp_groupid));
/* Вывод: 2024.02.03 10:38:34 (00:00:00.000): FB_64str = -100275021034 2024.02.03 10:38:34 (00:00:00.000): tmp_groupid = -1002075021034 2024.02.03 10:38:34 (00:00:00.000): tmp_str = -1002075021034
2024.02.03 10:43:19 (00:00:00.001): FB_64str = -10021 2024.02.03 10:43:19 (00:00:00.000): tmp_groupid = -1002000000001 2024.02.03 10:43:19 (00:00:00.001): tmp_str = -1002000000001 */