查看“C 整数转换”的源代码
←
C 整数转换
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
本节描述了各种格式说明符,用于以不同方式打印整数。 <br> ‘%d’和’%i’转换说明符分别打印有符号十进制数;而’%b’、‘%o’、‘%u’和’%x’打印无符号二进制、八进制、十进制或十六进制数(分别)。‘%X’转换说明符与’%x’相同,但使用字符’ABCDEF’作为数字,而不是’abcdef’。‘%B’转换说明符与’%b’相同,但带有’#’标志时,输出以’0B’而不是’0b’开头。 <br> 以下是一些有效的标志: * ‘-’:将结果左对齐(默认为右对齐)。 * ‘+’:对于有符号的’%d’和’%i’转换,如果值为正,则打印加号。 * ’ ‘:对于有符号的’%d’和’%i’转换,如果结果不以加号或减号开头,则在左侧添加空格。由于’+’标志确保了结果包含加号,因此此标志无效,如果同时提供两者。 * ‘#’:对于’%o’转换,强制前导数字为’0’,就像通过增加精度一样。对于’%x’或’%X’,此前缀为’0x’或’0X’(分别)。对于’%b’或’%B’,此前缀为’0b’或’0B’(分别)。这在’%d’、‘%i’或’%u’转换中没有用。使用此标志会导致输出可以被strtoul函数解析(参见整数解析)以及scanf与’%i’转换(参见数值输入转换)。 * ‘m’:打印错误常量或十进制错误数字,而不是可能翻译的错误消息。 * ‘'’:根据LC_NUMERIC类别指定的区域设置将数字分组。这是GNU扩展。 * ‘0’:用零填充字段,而不是空格。零出现在任何指示符号或基数之后。如果指定了精度,则忽略此标志。如果指定了精度,则指定要出现的最小数字数;必要时生成前导零。如果没有指定精度,则打印所需数量的数字。如果将值显式设置为零且精度为零,则不产生任何字符。 <br> 如果没有类型修饰符,相应的参数被视为int(对于有符号的’%i’和’%d’转换)或unsigned int(对于无符号的’%b’、‘%B’、‘%o’、‘%u’、‘%x’和’%X’转换)。请注意,由于printf和friends是可变参数的,因此任何char和short参数都会自动转换为int。对于其他整数类型的参数,可以使用以下修饰符: <ul> <li><p>‘hh’:指定参数为有符号char或无符号char,如适用。char参数无论如何都会通过默认参数提升转换为int或unsigned int,但’hh’修饰符表示将其再次转换回char。</p> <p>此修饰符是在ISO C99中引入的。</p></li> <li><p>‘h’:指定参数为有符号short或无符号short,如适用。短参数无论如何都会通过默认参数提升转换为int或unsigned int,但’h’修饰符表示将其再次转换回short。</p> <p>此修饰符是在ISO C99中引入的。</p></li> <li><p>‘j’:指定参数为intmax_t或uintmax_t,如适用。</p> <p>此修饰符是在ISO C99中引入的。</p></li> <li><p>‘l’:指定参数为long int或unsigned long int,如适用。两个’l’字符类似于’L’修饰符,如下所述。</p> <p>如果与’%c’或’%s’一起使用,相应的参数将被视为宽字符或宽字符字符串。这种使用’l’的方式是在Amendment 1中ISO C90引入的。</p></li> <li><p>‘L’:‘ll’:‘q’:指定参数为long long int。(此类型由GNU C编译器支持。在不支持额外长整数的系统上,这与long int相同。)</p> <p>’q’修饰符是另一个名称,来自4.4 BSD;有时称为“quad”int。</p></li> <li><p>‘t’:指定参数为ptrdiff_t。</p> <p>此修饰符是在ISO C99中引入的。</p></li> <li><p>‘wn’:指定参数为intn_t或int_leastn_t(两者相同),用于有符号整数转换,或uintn_t或uint_leastn_t(两者相同),用于无符号整数转换。如果类型比int窄,则提升的参数将转换回指定的类型。</p> <p>此修饰符是在ISO C2X中引入的。</p></li> <li><p>‘wfn’:指定参数为int_fastn_t或uint_fastn_t,如适用。如果类型比int窄,则提升的参数将转换回指定的类型。</p> <p>此修饰符是在ISO C2X中引入的。</p></li> <li><p>‘z’:‘Z’:指定参数为size_t。</p> <p>’z’是在ISO C99中引入的。’Z’是GNU扩展,早于此添加,不应在新代码中使用。</p></li></ul> <br>
返回至“
C 整数转换
”。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
基础知识
正则表达式
Markdown
分布式
项目管理
系统集成项目管理基础知识
云原生
Docker
云原生安全
云原生词汇表
十二因素应用
Kubernetes
音频处理
音频合成
Edge-tts
CMS系统
Docsify
VuePress
Mediawiki
自动生成
Marp
CI/CD
GitLab
设计
颜色
平面设计
AI
数字人
操作系统
GNU/Linux
数据库
Mysql
工具
链入页面
相关更改
特殊页面
页面信息