In MySQL documentation you can find that CHAR datatype has no preceding byte with string length.
In contrast VARCHAR datatype has 1 or 2 preceding bytes where string length is stored. Which is understandable. Database engine needs to know what is the string length in order to read it.
How does database engine know what is CHAR datatype length? What logic/algorithm is behind it?