一、printf
1.基本用法
•printf
的作⽤是将参数⽂本输出到屏幕
•printf
= print
+ f
,printf
代表输出打印,f
代表 format
(格式化),format
表⽰可以定制输出⽂本的格式,所以详细来说printf
是将数据按照指定格式打印
•printf
是在标准库的头⽂件 stdio.h
定义的。使⽤这个函数之前,必须在源码⽂件头部引⼊这个头⽂件,否者编译器会报错
•加上去就不会了
•屏幕上打印 I LOVE C
•printf
不会在⾏尾⾃动添加换⾏符,运⾏结束后,光标就停留在输出结束的地⽅,不会⾃动换⾏
•如果想要换行打印
,可以在输出⽂本的结尾,添加⼀个换⾏符 \n
•没换行打印
•换行打印
•还可以在数据中换行(想在哪里换就哪里换)
2.占位符
•printf
可以在输出⽂本中指定占位符, “占位符”指的是这个位置可以⽤其他值代⼊
•比如我们打印 I have 5 pears
•上⾯⽰例中,I have %d pears
是输出⽂本,⾥⾯的 %d
就是占位符,表⽰这个位置要⽤其他值来替换。
•占位符的第⼀个字符⼀律为百分号%
,第⼆个字符表⽰占位符的类型,%d
表⽰这⾥代⼊的值必须是⼀个整数。
•printf
的第⼆个参数就是替换占位符的值,上⾯的例⼦是整数 5 替换 %d 。执⾏后的输出结果就是 I have 5 pears
•常⽤的占位符除了%d
,还有 %s
表⽰代⼊的是字符串
(字符串要用双引号括起来)
•上⾯⽰例中,%s
表⽰代⼊的是⼀个字符串,所以printf
的第⼆个参数就必须是字符串,这个例⼦是 five 。执⾏后的输出就是 I have five pears
•输出⽂本⾥⾯可以使⽤多个占位符
•上⾯⽰例中,输出⽂本%s have %d pears
有两个占位符,第⼀个是字符串占位符%s
,第⼆个是整数占位符 %d
,分别对应printf
的第二个参数mom
和第三个参数5
(%s have %d pears
是第一个参数),执⾏后的输出就是mom have 5 pears
•printf参数与占位符是⼀⼀对应关系,如果有 n
个占位符, printf
的参数就应该有 n +1
个(输出文本算一个参数)
。如果参数个数少于对应的占位符, printf
可能会输出内存中的任意值
3.大部分 占位符 列举
• %a
:⼗六进制浮点数,字⺟输出为⼩写
• %A
:⼗六进制浮点数,字⺟输出为⼤写
• %c
:字符 //char 类型
• %d
:⼗进制整数 // int 类型
• %e
:使⽤科学计数法的浮点数,指数部分的 e 为⼩写
• %E
:使⽤科学计数法的浮点数,指数部分的 E 为⼤写
• %i
:整数,基本等同于 %d
• %f
:⼩数(包含 float 类型和 double 类型)// float类型 %f
// double 类型%lf
• %g
:6个有效数字的浮点数。整数部分⼀旦超过6位,就会⾃动转为科学计数法,指数部分的 e
为⼩写
• %G
:等同于 %g ,唯⼀的区别是指数部分的 E 为⼤写
• %hd