Why does the compiler understand ASCII by default?
https://piefed.blahaj.zone/c/c_lang/p/804353/why-does-the-compiler-understand-ascii-by-default
Why does the compiler understand ASCII by default?
https://piefed.blahaj.zone/c/c_lang/p/804353/why-does-the-compiler-understand-ascii-by-default
I dunno if this helps, but this screenshot shows the memory view of a program with a string. The hex representation in the middle is what is actually stored in memory. Each pair is one byte/char, and that is what your input[n] <= 0x39 is comparing against.