android — что означает «0x48151642» в malloc_debug_leak.cpp

Недавно я читаю код libc-init для Android. Когда я читаю код в malloc_debug_leak.cppв строке 70 и строке 263 сказано следующее.

#define GUARD               0x48151642
static uint32_t MEMALIGN_GUARD      = 0xA1A41520;

Я знаю GUARD а также MEMALIGN_GUARD смысл, но я действительно не понимаю значение значения, например, static uint32_t MEMALIGN_GUARD = 0x0001 в порядке? или любое другое значение. Есть ли 0xA1A41520 есть полезная информация?

http://i.stack.imgur.com/9lgzv.png

http://i.stack.imgur.com/ZMM5u.png

-1

Решение

Я действительно не понимаю значения

Это волшебная ценность, предназначенная для выявления распространенных ошибок программирования. Увидеть эта статья в википедии для подробного объяснения.

Было бы 0x0001 будет хорошо?

Нет. В нем отсутствует свойство «отличительная уникальная ценность, которую вряд ли можно принять за другие значения».

Когда вы видите значение 0x1 в определенном месте памяти такое значение, скорее всего, может быть размещено множеством различных кодовых последовательностей. С другой стороны, когда вы видите 0xA1A41520, весьма маловероятно (хотя все еще возможно), что это значение было помещено туда кодом, отличным от того, который использует MEMALIGN_GUARD,

0

Другие решения