Using incorrect format descriptors results in an Undefined Behavior.
Undefined Behavior means the behavior cannot be explained. It might work it might not or give unpredictable results, this behavior can vary anyhow, it cannot be explained in portable conclusive way for all compilers.