C语言printf格式化输出修饰符详解

转换说明 输出
%a,%A 浮点数、十六进制数和p-计数法(C99)
%c 一个字符
%d 有符号十进制数
%e,%E 浮点数,e计数法
%f 浮点数,十进制计数法
%g,%G
根据数值不同自动选择%f或%e,%e格式在指数小于-4或者大于等于精度时使用

%i 有符号十进制整数(与%d相同)
%o 无符号八进制整数
%p 指针
%s 字符串
%u 无符号十进制数
%x,%X 使用十六进制数0f的无符号十六进制整数
%% 打印一个百分号
prinf()修饰符
修饰符 意义
标志
五种标志将在后面的表中说明,可以使用零个或者多个标志

示例: "%-10d"

digit(s)
字段宽度的最小值。如果字段不能容纳要打印的数或者字符串,系统会使用更宽的字段

示例: "%4d",“%10s”

.digit(s)
精度.对于%e,%E和%f转换,是将要在小数点的右边打印的数字的位数。

对于%g和%G转换,是有效数字的最大位数。

对于%s转换,是将要打印的字符的最大数目。

对于整数转换,是将要打印的数字的最小位数。如果必要,要使用前导0来达到位数。

只使用"."表示其后跟随一个0,所以%.f和%.0f相同

示例: “%5.2f”表示打印一个浮点数,它的字段宽度为5个字符,小数点后有两个数字

h
和整数转换说明符一起使用,表示一个short int或unsigned short int类型数值

示例: “%hu”, "%hx", "%6.4hd"

hh 和证书转换说明符一起使用,表示一个signed char或unsigned char类型数值
j
和整数转换说明符一起使用,表示一个intmax_t或uintmax_t值

示例: "%jd","%8jx"

l 和整数转换说明符一起使用,表示一个long int或unsigned long int类型值
ll
和整数转换说明符一起使用,表示一个long long int或unsigned long long int类型值(C99)

示例: "%lld","%8llu"

L
和浮点数转换说明符一起使用,表示一个long double值

示例: "%Lf", "%10.4Le"

t
和整数转换说明符一起使用,表示一个ptrdiff_t值(与两个指针之间的差相对应的类型)(C99)

示例: "%td", "%1ti"

z
和整数转换说明符一起使用,表示一个size_t值(sizeof返回的类型)(C99)

示例: "%zd","%12zx"

printf()的标志
标志 意义
-
项目左对齐,即,会把项目打印在字段的左侧开始处

示例: "%-20s"

+
有符号的值若为正,则显示带加号的符号;若为负,则显示带减号的符号

示例: "%+6.2f"

(空格)
有符号的值若为正,则显示时带前导空格(但是不显示符号);若为负,则带减号符号。

+标志会覆盖空格标志

示例: "% 6.2f"

#
使用转换说明的可选形式。若为%o格式,则以0开始;若为%x和%Xgeshi ,则以0x或0X开始。

对于所有的浮点形式,#保证了即使不跟任何数字,也打印一个小数点字符。对于%g和%G格式,

它防止尾随0被删除

示例: "%#o", "%#8.0f", "%+#10.3E"

0
对于所有的数字格式,用前导零而不是空格填充字段宽度。如果出现-标志或者指定了精度(对于整数)则忽略该标志

示例: "%010d", "%08.3f","%02X"

时间: 2024-10-16 08:09:47

C语言printf格式化输出修饰符详解的相关文章

关于@property后面修饰符详解

关于@property后面修饰符详解 @property后面有哪些修饰符 1.线程安全的 atomic.nonatomic 2.访问权限的 readonly.readwrite 3.内存管理(ARC) assign.strong.weak.copy 4.内存管理(MRC) assign.retain.release 5.指定方法名称 (如何定义set get 方法) setter = getter = 由于将来我们经常需要定义一些方法来操作成员变量,而每个方法都必须有一个有意义的名称,而想名字非

MySQL的数据类型及其常用修饰符详解

MySQL的数据类型及其常用修饰符详解 ================================================================================ 概述: ========================================================================================== Mysql的数据类型     在mysql数据库当中,每一个库都是有多张表来组成的,每一个表都是由行和列来组

C#.net 中 修饰符 详解 (来自MSDN)

自己理解的不够深刻,无奈基础较差!记上一笔,记忆深刻些,哈哈…… 1. 访问修饰符 public 同一程序集中的任何其他代码或引用该程序集的其他程序集都可以访问该类型或成员. private 只有同一类或结构中的代码可以访问该类型或成员. protected 只有同一类或结构或者此类的派生类中的代码才可以访问的类型或成员. internal 同一程序集中的任何代码都可以访问该类型或成员,但其他程序集中的代码不可以. protected internal 由其声明的程序集或另一个程序集派生的类中任

Java-004-变量类型和修饰符详解

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px "Yuanti SC"; color: #000000 } Java的变量 Java中主要有如下几种类型的变量:局部变量.类变量(静态变量).成员变量(非静态变量) 变量其实是java中的一个最基本的单元,也就是内存中的一块区域, Java中的变量有四个基本属性:变量名,数据类型,存储单元和变量值 ◆变量名:合法的标识符 ◆变量的数据类型:可以是基本类型和引用类型(必须包含类型)

C# 中4个访问符和8个修饰符详解

4个访问修饰符(是添加到类.结构或成员声明的关键字) Public:公有的,是类型和类型成员的访问修饰符.对其访问没有限制. Internal:内部的,是类型和类型成员的访问修饰符.同一个程序集中的所有类都可以访问 Private:私有的,是一个成员访问修饰符.只有在声明它们的类和结构中才可以访问. Protected::受保护的,是一个成员访问修饰符.只能在它的类和它的派生类中访问. protected internal:访问级别为 internal 或 protected.即,“同一个程序集

Koltin——最详细的可见性修饰符详解

在Kotlin中,不管是类,对象,接口,构造函数,函数,属性及其设置器都具有可见性修饰符.Kotlin中的可见性修饰符共四种.即public.protected.private.internal.在不同的场景声明不同的修饰符都有不同的可见性.下面详解介绍不同的修饰符在不同场景的范围. 这里值得注意的是,属性的Getter()函数的可见性具有与属性相同的可见性. 目录 一. 四种修饰符的说明 public修饰符表示 公有 .此修饰符的范围最大.当不声明任何修饰符时,系统会默认使用此修饰符. int

AJPFX分享JAVA修饰符详解

1.类的修饰符分为:可访问控制符和非访问控制符两种. 可访问控制符是:公共类修饰符 public 非访问控制符有:抽象类修饰符 abstract :最终类修饰符 final 1 )公共类修饰符 public : Java 语言中类的可访问控制符只有一个: public 即公共的.每个 Java 程序的主类都必须是 public 类作为公共工具供其它类和程序使用的应定义为 public 类. 2 )抽象类修饰符 abstract :凡是用 abstract 修饰符修饰的类,被称为抽象类.所谓抽象类

C#修饰符详解

大家在新浪微博 @蜀云泉 就可以找到我啦. 一.new 别看new这个修饰符经常用,恐怕很多人都不知道其本质.我们先来看看new修饰符的官方定义: new 仅允许在嵌套类声明中使用,表明类中隐藏了由基类中继承而来的与类中同名的成员. 看懂了吗?不懂没关系,咱们接着往下看 首先,我定义一个类: 1 namespace 修饰符概念 2 { 3 class new修饰符 4 { 5 6 private string StrName; 7 8 public string strName 9 { 10 g

php正则表达式修饰符详解

preg_match_all("/(.+)<\/form>/isU" , $string, $result); 这里/ 后面加了 3个修饰符 i 是 不区分大小写的匹配 s 是 带有换行的 匹配 U 是非贪婪模式.匹配最少部分. 修饰符:i :如果在修饰符中加上"i",则正则将会取消大小写敏感性,即"a"和"A" 是一样的.m:默认的正则开始"^"和结束"$"只是对于正则字符