格式化字符串任意寫原理

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

%c、%x 的用法

%c 在 printf 的使用中,表示的是輸出類型為字符型,例如:%200c 表示總共輸出 200 個字符,如果不足 200 個則在前面補上空字符。

%n 的用法

特殊的格式化控制符%n,和其他控制輸出格式和內(nèi)容的格式化字符不同的是,這個格式化字符會將已輸出的字符數(shù)寫入到對應(yīng)參數(shù)的內(nèi)存中。

%n????????? 一次性寫入 4 個字節(jié)

%hn???????? 一次性寫入 2 個字節(jié)

%hhn??????? 一次性寫入 1 個字節(jié)

%n 一般會配合 %c 進行使用,%c 負(fù)責(zé)輸出字符,%n 負(fù)責(zé)統(tǒng)計輸出的字符串的數(shù)量并轉(zhuǎn)化為 16 進制格式寫入到偏移的內(nèi)存地址里。

所以之后寫內(nèi)存的任務(wù)其實就是計數(shù)的任務(wù)了,在后面的例子中也會詳細(xì)講解到。

這個控制字符的詳細(xì)用法在這篇文章中講的很清楚了,這里就不贅述了。

網(wǎng)址:https://www.anquanke.com/post/id/180009#h3-3

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容