04 printf 命令

Posted 蓝风9

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了04 printf 命令相关的知识,希望对你有一定的参考价值。

前言

// 本来想安慰别人, 却把自己搞 emo 了, 呵呵 

呵呵 这个命令 应该是 linux 使用者 基本上都会使用到的吧?

呵呵 我们这里主要是 看一下 这个命令是如何工作的

main 中主要是参数处理, 然后将核心业务委托给 print_formatted

print_formatted 主要是对于 占位符部分的处理, 和对于转义字符的处理, 其他字符原样输出

print_direc 主要是基于 printf 来处理 占位符 以及 对应的参数

print_esc 主要是 转义相关处理

基于 linux-4.4.0 + coreutils-8.25

调试基于命令 "printf "%-10s %-8s %-4.2f\\n" 郭靖 男 66.1234"

main

主流程的判断, 获取 fmt, 将业务委托给 print_formatted 

print_formatted

从主流程上面来看是分为了 三个部分  

一个部分是 基于 print_direc 来处理占位符部分 

另外一个部分 是基于 print_esc 来处理转义字符部分  

其他部分 直接原样输出 

print_direc

这里主要是基于占位符 以及 该占位符对应的参数, 使用 printf 来输出 

print_esc 

主要是支持转义字符的处理, 包含了 十六进制表示的处理, 八进制表示的处理, 一般转义字符的处理, unicode表示的处理, 其他不符合规则的字符则原样输出 

完 

以上是关于04 printf 命令的主要内容,如果未能解决你的问题,请参考以下文章

Bq 命令或数据流按原样加载

Linux Shell编程——Shell常用命令(输出判断循环函数包含)

Golang basic_leamingfmt.Print, fmt.Printf, fmt.Println 的区别

Golang basic_leamingfmt.Print, fmt.Printf, fmt.Println 的区别

c语言中printf格式怎么设置

printf函数怎么使用?