1、先来看看一个程序“HelloWorld”:
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/94af5fc1b727ac53daf6b09f2ecadce8914899d1.jpg)
2、printf的全称是: print format(格式化打印),将一个被格式化的信息打印输出到标准输出流(通常指的是控制台窗口,如上图所示的黑窗口);
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/a48bc2e8904800fc9589b9bdd42043715edb93d1.jpg)
1、printf 函数不仅仅可以打印输出一个字符串,而且还可以打印输出各种不同类型的变量的值,下图所示的是printf支持打印的各种数据类型 键入域字符:
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/5e615d715fdb36205144ec3aabc5260f89358dd1.jpg)
2、其中
① 32位有符号整数如:short,int,long 主要使用 %d, %i;
注:更准确的说是 printf 并不支持 short 类型,但是由于printf只是读取内存中的值,并不会修改内存中的值,而且现在的计算机默认是4字节对齐所以问题一般不会暴露出来;
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/b87bd38920c5260f644bfc39d2de4507890189d1.jpg)
3、② 32位无符号整数如:unsigned short, unsigned int, unsigned long, 主要使用的是 %o, %u, %x, %X;
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/8974c38a59de4507787f19c35e413a8ca70885d1.jpg)
4、③ 64位有符号整数如:_int64, long long 主要使用 %lld, %lli;
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/dccb47de45078801c90ef4f2b18ca608a40f82d1.jpg)
5、④ 64位无符号整数如:unsigned _int64, unsigned long long 主要使用:
%llo, %llu, %llx, %llX;
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/444696013870d541c9f287bb2e0f94fc518c80d1.jpg)
6、⑤ 单精度浮点数如:float 主要使用:%a, %A, %e, %E, %f, %g, %G;
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/a44e8afc508c9bce3e86abc4d6dd884ce44afad1.jpg)
7、⑥ 双精度浮点数如:double, long double 主要使用:%la, %lA, %le, %lE, %lf, %lg, %lG;
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/c6b994775ddd884c18340e946cef28066a01f6d1.jpg)
8、⑦ char 类型字符使用:%c;
⑧ wchar_t 类型宽字符使用:%C;
⑨ char字符串使用:%s;
⑩ wchar_t 类型的宽字符使用:%S;
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/2947750192dd3340b28cb034881c99c0aefcf1d1.jpg)
1、转义字符的打印主要跟字符的打印一样,如:
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/025d87c0affce1862e5089c11f1fbee435daebd1.jpg)
2、转义字符打印方式:
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/955ea0e434daf05e5a5c58c2751d96d81919e5d1.jpg)
3、% 这个符号在格式化中,需要使用连续的两个%,才能够输出哦,如:
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/979906196120a7cd1b11da4189b375d7987bdcd1.jpg)
1、关于精度对应的输出格式:
%【标志】【宽度】【.精度】【类型】
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/fab31cb375d7997ba78bfbebf9dade49600fd9d1.jpg)
2、类型:是指安装什么形式打印,如:%d,%i,%u,%o等,具体的可以看上部分所讲解的内容;
3、宽度:主要是指变量打印时占用的最小的宽度,如:
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/739bc049610f8b568f7b0fdb9ce951e10ff8d3d1.jpg)
4、标志:指定输出符号,空白,前导零调整和输出的字符,小数点和八进制和十六进制前缀。 多个标志指令可以显示格式规范,因此,标志可以按任意顺序显示。具体的解释和例子如下:
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/2f2909e951e10ef87f29f48e2324d8e9cdd2ccd1.jpg)
5、精度:主要是指保留小数点后面的数据的位数
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/a965c6e9ccd2bb667c26a4f39b2a04e23fa2c6d1.jpg)
6、方便他人亦是方便自己,如果觉得还行就点下下边的投票吧,这样可以帮助其他人更快的找到解决问题的方法;有疑问的也可留言哦, 谢谢!
![C语言视频 VS2015:[10]printf](https://exp-picture.cdn.bcebos.com/ba274f598540102a349d1f11b142a07aa110c5d1.jpg)