Вам не гарантируется, что ptr по-прежнему будет использоваться после строки a="hello"
(так как похоже, что это одна и та же строка). В вашем случае, поскольку Hello был меньше, а строка не передавалась, похоже, она использовала пробел повторно.
Это поведение, специфичное для реализации. Он мог легко разбиться.