格式化字符串寫操作的原理
%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ì)用法在這篇文章中講的很清楚了,這里就不贅述了。