`
clouisandy
  • 浏览: 19770 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

printf格式化转换说明

 
阅读更多
[code="c"]int printf(char *format,arg1,arg2,...)


这样printf常用,第一个参数是要输出的内容,后面是变量列表,这样函数会将format变量中的“%xxxx”替换成后面的变量arg1~argn

下面介绍一下这些“%xxxx”,如“%-15.10s”分两个部分,前面的"-15.10"是对格式的限定,后面的“s”是对类型的限定。先说格式的限定:

  • 符号(-) ,左对齐
  • 数字(123),最小字段宽度,不够的填充空格,往哪边填充要看对齐方式了
  • 小数点(.),指定精度,如果是字符串那就是打印的最大字符数,如果是浮点数即小数点后的最少位数,如果是整数即最少输出的数字数目



再说类型的限定:

  • h或l,h是short类型打印,l是long类型打印
  • d或i,int类型,10进制
  • o,int类型,无符号8进制
  • x或X,int类型,无符号16进制
  • u,int类型,无符号10进制
  • c,单个字符
  • s,字符串
  • f,double类型
  • e或E,double类型,科学技术法表示
  • g或G,double类型,选择性地打印科学计数法,如果指数的精度小于-4或者大于等于精度,则用科学计数法,否则正常%f输出
  • p,void *类型,指针
  • %,打印%


如果觉得抽象,看下面例子就明白了:

[code="例子"]main()
{
printf("%.*s\n",5,"hello,world");//hello “×”可以被后面的整型数字替换

printf("%s\n","hello,world");//hello,world
printf("%10s\n","hello,world");//hello,world
printf("%.10s\n","hello,world");//hello,worl
printf("%.15s\n","hello,world");//hello,world
printf("%15.10s\n","hello,world");//     hello,worl 最小宽度为15,最大字符数为10,所以‘d’没有打印出来,并且右对齐
printf("%-15.10s\n","hello,world");//hello,worl 同上,左对齐

printf("%o\n",10);//12 八进制的10
printf("%x\n",17);//11 十六进制的17
printf("%f\n",1234567.1234567);//1234567.123457 注意后面的6变为了7,默认的f精度为6,所以四舍五入了
printf("%e\n",1234567.1234567);//1.234567e+006
printf("%E\n",1234567.1234567);//1.234567E+006 e变为大写的了
printf("%g\n",123456.123456);//123456 精度为6,指数为5,正常输出
printf("%g\n",1234567.1234567);//1.23457e+006 精度为6,指数为6,用科学计数法

char p[100];
printf("%p\n",p);//0022FF00
printf("%%\n");//%

char s[100];
sprintf(s,"%g\n",1234567.1234567);//将内容输入到s中
printf("%s\n",s);//1.23457e+006
}


上面顺便说了一下“sprintf”的用法
分享到:
评论

相关推荐

    利用宏将网络字节序和主机字节序ip格式化输出方法

    利用宏将网络字节序和主机字节序ip格式化输出为字符串ip

    详解C语言中printf输出的相关函数

    printf()会根据参数 format 字符串来转换并格式化数据,然后将结果输出到标准输出设备(显示器),直到出现字符串结束(‘\0’)为止。 参数 format 字符串可包含下列三种字符类型: 一般文本,将会直接输出 ASCII ...

    最小资源的printf函数

    最小资源的printf函数,支持%s, %d, %x打印,资源很小,非常适合单片机应用,已经在MSP430单片机上调试通过。 主函数为:void S_Printf(char *fmt...分别是16进制数转换成字符串,整形数转换成字符串,格式化填充函数。

    printf

    #printf SH名称.B _printf 格式化输出转换.SH简介_printf功能将数据从内存传输到thr屏幕。 int print_char(va_list a,char * buffer,int索引): print_char-打印字符。 命名列表缓冲区本地缓冲区缓冲区进行的...

    浅谈Python 字符串格式化输出(format/printf)

    Python 字符串格式化使用 “字符 %格式1 %格式2...字符串格式化时百分号后面有不同的格式符号,代表要转换的不同类型,具体的表示符号如下面所示。 格式符号 表示类型 %s 字符串 %d/%i 十进制整数 %u 十进制整数 %o

    cprintf:行人 ND 数组格式化和显示实用程序:cprintf 将 ND 数组或 ND 元胞数组转换为 2D 字符数组和 - 可选 - 表-matlab开发

    CPRINTF - 转换一个 ND 数组- 真实和/或复杂的全数字数据- 真实和/或复杂的稀疏数字数据- 逻辑数据- 字符字符串- 结构- 其他对象或上述任意组合的 ND 元胞阵列到二维字符数组- 创建表格- 输入可能是格式化为表格的...

    C语言输出格式总结.

    ①格式说明:由“%”和格式字符组成,它的作用是将输出的数据转换 为指定的格式输出。 ②普通字符,即需要原样输出的字符。 (2)“输出表列”是需要输出的一些数据,可以是表达式 (3) printf函数的一般形式可以...

    ft_printf_NULL

    提要printf格式[参数...] 描述printf实用程序在格式的控制下在第一个之后格式化并打印其参数。 格式是一个字符串,包含三种类型的对象:普通字符(简单地复制到标准输出中),字符转义序列(转换并复制到标准输出中...

    node-printf:在Node.js中写入格式化数据(printf和sprintf的完整实现)

    您将获得其他功能,例如%O转换器(用于inspect参数)。 请参阅下面的。 正在安装 通过 : $ npm install printf 用法 像在C( printf / sprintf )中一样使用它: var printf = require ( 'printf' ) ; var ...

    printf:printf功能

    印刷品印刷品简介这是printf函数的简单实现,用于格式化和打印数据。 _printf()函数根据下面描述的格式产生输出。 此函数将其输出写入标准输出流stdout。 函数成功时返回打印的字符数,函数失败时返回-1。 可用的...

    C语言预科5天(华清远见).

    一、printf将格式化数据写到标准输出,fprintf写 至指定的流,sprintf将格式化的字符送入数组buf 中。sprintf在该数组的尾端自动加一个null字节, 但不包含在返回值中。snprintf的引入是为了解决 sprintf函数...

    字符串 Hex 转换 输出

    2.可以格式化显示输出这个功能类似printf,但是是一个指定字节大小为单位的'值'来进行输出的。 3.可以通过Hex输入查看原字符串 4.字符统计功能 5.输入的字符串Asc&Unicode或者Hex在内存中的数据呈现。 6.支持托盘,...

    printf:霍尔伯顿项目的定制printf

    定制的_printf()函数 _printf-格式化输出转换 我自己的printf函数

    swift-TDFAPILogger-自动格式化输出API日志

    将API日志分为请求、响应、异常三部分来输出 ...优化了打印格式,选用C的printf而非NSLog,避免打印其他无关的信息 响应日志中对默认输出的JSON信息进行了pretty print处理,转换成标准的JSON格式,易于阅读

    42_printf:42圣保罗的printf项目

    这是一个进展中的工作!...必须格式化的参数之前LEFT-JUSTIFY:要使用左对齐标志,您需要指定字段宽度。 例如, printf ( " %-d hello? " , 777 ); 只是777hello?后面没有空格。 如果指定的宽度等于或小于您要打

    iOS时间字符串格式化输出技巧详解

    项目是多人开发,由于前期没有统一处理时间转换的问题,后期发现项目中好多关于时间转换的代码,大部分都是通过(- : 等字符)截取成字符串数组再取相应时间拼接成指定格式,输出在UI显示的地方,代码非常的臃肿,并且这种...

    C语言中字符串和数字的相互转换实现代码

    printf 和sprintf 都使用格式化字符串来指定串的格式,在格式串内部使用一些以“%”开头的格式说明符(format specifications)来占据一个位置,在后边的变参列表中提供相应的变量,最终函数就会用相应位置的变量来...

    php 常用字符串函数总结

    printf()格式化输出 –函数,把文字格式化以后输出,直接调用系统调用进行IO的,他是非缓冲的。如: $name=”hunte”; $age=25; printf(“my name is %s, age %d”, $name, $age); sprintf()格式化字符串,然后...

Global site tag (gtag.js) - Google Analytics