printf函数的格式及含义

d                    以十进制带符号的形式输出整数(对正数不输出符号)

o                    以八进制无符号的形式输出整数(不输出前导符0)

x                    以十六进制无符号的形式输出整数(不输出前导符0x)

u                    以十进制无符号的形式输出整数

c                    输出一个字符

s                    输出一个字符串

f                    以小数的形式输出单,双精度实数,隐含输出6位小数

e                    以标准指数形式输出单,双精度实数,数字部分小数位数为6位

g                    选用f或者e格式中输出宽度比较短的一种格式,且不输出无意义的0

l                    用于长整型数,可加在格式符d,o,x,u的前边

m(一个具体的整数)      数据最小的输入输出宽度

.n(一个具体的整数)      对实数,表示输出几位小数;对字符串,表示截取的字符个数

-(负号)               输出的数据在域内向左对齐

printf转义字符表

\a            系统提示音(“嘀”的一声)

\b            倒退一格

\f            跳页

\n            换行

\r            机架返回

\t            水平跳格,相当于按TAB键

\v            垂直跳格

\‘            显示单引号‘

\“            显示双引号“

\\            显示反斜线

\ddd            八进制表示的ASCII码,每个d代表一个八进制数字

\xdd            十六进制表示的ASCII码,每个d代表一个十六进制数字

printf函数使用时的注意事项

格式说明符应当与所对应的表达式类型一致.比如,输出整型数据时,可以使用格式字符d,o,x,u等.

m为 指定的数据输出宽度.如果数据的实际宽度大于m ,则突破m的限制,按数据的实际宽度输出;如果数据的实际宽度小于m,则按m指示的宽度输出,输出时向右对其,左端补空格.

负号“-”表示如果数据的输出宽度小于m,则输出时数据向左对其,右端补空格.

“%m.nf”表示输出的浮点型数据共占m列(含小数点),其中小数点后有n位数字.

“%m.ns”表示输出的字符串共占m列,但只取字符串左端的n个字符.这n个字符输出在m列的右侧,左侧补空格.

对于o或x格式符,输出的数值不带符号位,而是将符号位也看做数值的一部分,因此不能直接输出负的八进制或十六进制数.

如果想输出字符“%”,则应该在“格式控制”字符串中连续写两个“%”,即两个“%”,表示一个“%”字符.

printf函数的更多相关文章

  1. 可变参数列表与printf()函数的实现

    问题 当我们刚开始学习C语言的时候,就接触到printf()函数,可是当时"道行"不深或许不够细心留意,又或者我们理所当然地认为库函数规定这样就是这样,没有发现这个函数与普通的函数 ...

  2. Linux Linux下特殊的printf函数和fputs函数

    Linux下,printf函数必须以'\n'结尾才会立刻输出到屏幕,如果没有'\n'直到输出缓冲区满了以后才会打印到屏幕上(敲击换行也算),如果需要不换行的输出,一般可以使用write函数代替.'\n ...

  3. 关于printf函数的所思所想

    缘起大一下学期,C语言程序设计徐小青老师的随口一提,经娄嘉鹏老师提醒,我觉得应该自己整理清楚这一问题.涉及网上资料将会标明出处. 关于printf函数的所思所想 * printf的定义 printf( ...

  4. C语言printf()函数:格式化输出函数

    C语言printf()函数:格式化输出函数 头文件:#include <stdio.h> printf()函数是最常用的格式化输出函数,其原型为:     int printf( char ...

  5. 关于printf函数输出先后顺序的讲解!!

    对于printf函数printf("%d%d\n",a,b);函数的实际输出顺序是这样的先计算出b,然后在计算a,接着输出a,最后在输出b:例子如下:#include<ios ...

  6. printf()函数

    printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息. printf()函数的调用格式为: printf("<格式化字符串>", <参 ...

  7. C 中 关于printf 函数中度剖析

    题外话  这篇博文主要围绕printf函数分析的,主要讲解printf 使用C的可变参数机制, printf是否可重入(是否线程安全), printf函数的源码实现. 正文 1.C中可变参数机制 我们 ...

  8. printf函数重定向

    printf函数底层会调用fputc函数 /*重定向c库函数printf到USART1*/ int fputc(int ch, FILE *f) { /*发送一个字节数据USART1 */ USART ...

  9. php中sprintf与printf函数用法区别

    下面是一个示例:四舍五入保留小数点后两位  代码如下 复制代码 <?php$num1 = 21;echo sprintf("%0.2f",$num1)."<b ...

随机推荐

  1. Spring(4)

    Spring的Bean的配置形式 1.基于XML的形式(无需讲解) 2.基于注解的形式(需要引入AOP的jar包,此jar包实现了AOP的注解) 当在Spring配置文件中引入类扫描注解命名空间并且指 ...

  2. C++ 为什么拷贝构造函数参数必须为引用?赋值构造函数参数也必须为引用吗?

    之前写拷贝构造函数的时候,以为参数为引用,不为值传递,仅仅是为了减少一次内存拷贝.然而今天看到一篇文章发现自己对拷贝构造的参数理解有误. 参数为引用,不为值传递是为了防止拷贝构造函数的无限递归,最终导 ...

  3. what is SVD and how to calculate it

    http://web.mit.edu/be.400/www/SVD/Singular_Value_Decomposition.htm SVD是研究地震波运动极性化的一个方法.

  4. web 乱码摘抄

    JavaWeb--中文乱码小结 JavaWeb--中文乱码小结 0.纯粹html乱码: 换个editor吧(有时候notepad都比sublime_text好用),最好是在<head>&l ...

  5. ubuntu下code::blocks+opengl的使用与配置

    操作系统:Ubuntu 15.04 gcc version 4.9.2 opengl安装 sudo apt-get install build-essential libgl1-mesa-dev li ...

  6. Android开源框架:Universal-Image-Loader解析(二)MemoryCache

  7. 第一个structs+spring+hibernate的web程序

    1. 数据库: Column Type Comment id int(11) Auto Increment   name varchar(50) NULL   url varchar(255) NUL ...

  8. Android 游戏教程让人物动起来

    在这里给大家分享Android游戏教程怎样让人物动起来,话不多说了,直接进入正题. 一. 准备工作     首先要准备好要使用的人物动作图和地形图.把它分割成16个不同的动作,循环播放同一行的4个不同 ...

  9. 领域设计之模型充血、Repository对象注入

    工作中接触了不少项目组,他们在实际的项目开发中,Domain Object的贫血模型设计,还是主要的应用的范式.原因在于,贫血模型模型设计中,把所有涉及持久化的业务逻辑,封装到了Domain Serv ...

  10. Spring的Bean的基本概念

    Spring其实就是一个大型的工厂,而Spring容器中的Bean就是该工厂的产品.Spring容器能够生产哪些产品,取决于配置文件的配置. 对于我们而言,使用Spring框架做两件事:开发Bean. ...