0x64 = 'c' = 99 (decimal). The 'byte' value is the same, represented in different ways.
If looking at the content of a file using a debugger, the debugger may present the data to you in 'Hex'; in which case it would show a pair of Hex digits which represent one byte.
(Yes, 'in hex, every pair of characters is a byte.)
In C, you can print out a byte value represented in various ways:
printf("%d", 0x63); // will print out: 99
printf("%X", 0x63); // will print out: 63
printf("%c", 0x63); // will print out: c
printf("%d", 99); // will print out: 99
printf("%X", 99); // will print out: 63
printf("%c", 99); // will print out: c
printf("%d", 'c'); // will print out: 99
printf("%X", 'c'); // will print out: 63
printf("%c", 'c'); // will print out: c