Подтвердить что ты не робот

Таинственный номер 18888888888888888

Один из наших тестеров сумел установить переменную, привязанную к ползуну, до 18888888888888888, которая может принимать значения только между 1-100 нормально. (Я могу наблюдать это в модели, которая сохраняется в файле xaml.) Что особенного в этом номере?

Вот некоторые подробности. Приложение имеет слайдер, оно привязано к наблюдаемому свойству в модели представления. Обычно, когда приложение сохраняет рабочее пространство, эта модель просмотра сохраняется вместе с помощью XamlServices.Save. Мой тестер сообщил о каком-то неудобном поведении, о значении ползунка, показывающем -214 при загрузке этого проекта. Я попросил его отправить мне файл, и значение в сохраненном xaml содержит мое загадочное число.

Я знаю, что это результат ошибки в моем коде или какой-то другой код библиотеки. Я, надеюсь, пригвошу его. Однако нормальные значения "мусора" не могут быть такими. Когда я google, я вижу некоторые страницы, не связанные с программированием, которые показывают, как-то это число было создано в истории Интернета (так что это не моя кошка). Короче говоря, я пытаюсь понять, как это число может быть создано в первую очередь, например, когда вы видите INT_MAX + 1, если вы достаточно опытны, вы можете его распознать (-2137483648)?

4b9b3361

Ответ 1

Предположим, что 1 в начале является владельцем места - ошибкой отображения двойной строки.

У нас есть 16 8. Двойной тип в С# имеет точность до 16 байт. Это может указывать на то, что дисплей слайдера пытается показать некоторый тип двойного значения мусора: 8888888888888888 или 0x1000100010001000100010001000100010001000100010001000100010001000.

Возможно, что тестер привел к тому, что значение double стало чем-то вроде значения NaN. (возможно, NaN отображается так) Это определенно объясняет длину строки.

Кроме того, из-за ограничений отображения класса слайдера, показывающего только числа, вероятно, он должен был прочитать 1x8888888888888888. Мусор, мусор?

Хорошо, это моя догадка.