美文网首页
格式化字符串任意写原理

格式化字符串任意写原理

作者: anything都不会 | 来源:发表于2019-11-17 20:37 被阅读0次

    格式化字符串写操作的原理

    %c、%x 的用法

    %c 在 printf 的使用中,表示的是输出类型为字符型,例如:%200c 表示总共输出 200 个字符,如果不足 200 个则在前面补上空字符。

    %n 的用法

    特殊的格式化控制符%n,和其他控制输出格式和内容的格式化字符不同的是,这个格式化字符会将已输出的字符数写入到对应参数的内存中。

    %n          一次性写入 4 个字节

    %hn         一次性写入 2 个字节

    %hhn        一次性写入 1 个字节

    %n 一般会配合 %c 进行使用,%c 负责输出字符,%n 负责统计输出的字符串的数量并转化为 16 进制格式写入到偏移的内存地址里。

    所以之后写内存的任务其实就是计数的任务了,在后面的例子中也会详细讲解到。

    这个控制字符的详细用法在这篇文章中讲的很清楚了,这里就不赘述了。

    网址:https://www.anquanke.com/post/id/180009#h3-3

    相关文章

      网友评论

          本文标题:格式化字符串任意写原理

          本文链接:https://www.haomeiwen.com/subject/lutdmctx.html