C: https://blog.nowcoder.net/n/5a03be1c8562483196e20b8fa247989a