this post was submitted on 29 Feb 2024
549 points (98.4% liked)
196
16710 readers
2972 users here now
Be sure to follow the rule before you head out.
Rule: You must post before you leave.
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
In the ASCII character encoding, the hexadecimal number 61 is the letter 'a'. (Yes, it is lowercase.) 0x is just a notation that indicates a number is in hexadecimal, as opposed to decimal or binary.
Therefore, 0x6161616161616161 translates to the string "aaaaaaaa" (without the quotes or a null terminator).
Its worth noting the null terminator is part of the string's encoding rather than being part of the string itself, so the lack of a null terminator is more of an implementation detail. Kind of like describing a pointer as "not a fat pointer".