https://occ.orioncode.sg/read-....blog/155058_why-on-c