• C++ printf输出


    如果在程序中要使用 printf 或者 scanf,那么就必须要包含头文件 stdio.h。因为这两个函数就是包含在该头文件中的。

    常用的输出控制符

    控制符 说明
    %d 按十进制整型数据的实际长度输出。
    %ld 输出长整型数据。
    %md m 为指定的输出字段的宽度。如果数据的位数小于 m,则左端补以空格,若大于 m,则按实际位数输出。
    %u 输出无符号整型(unsigned)。输出无符号整型时也可以用 %d,这时是将无符号转换成有符号数,然后输出。但编程的时候最好不要这么写,因为这样要进行一次转换,使 CPU 多做一次无用功。
    %c 用来输出一个字符。
    %f 用来输出实数,包括单精度和双精度,以小数形式输出。不指定字段宽度,由系统自动指定,整数部分全部输出,小数部分输出 6 位,超过 6 位的四舍五入。
    %.mf 输出实数时小数点后保留 m 位,注意 m 前面有个点。
    %o 以八进制整数形式输出,这个就用得很少了,了解一下就行了。
    %s 用来输出字符串。用 %s 输出字符串同前面直接输出字符串是一样的。但是此时要先定义字符数组或字符指针存储或指向字符串,这个稍后再讲。
    %x(或 %X 或 %#x 或 %#X) 以十六进制形式输出整数,这个很重要。

    %x、%X、%#x、%#X 的区别

    如果是小写的x,输出的字母就是小写的;如果是大写的X,输出的字母就是大写的;如果加一个#,就以标准的十六进制形式输出。

    最好是加一个#,否则如果输出的十六进制数正好没有字母的话会误认为是一个十进制数呢!总之,不加#容易造成误解。但是如果输出 0x2f 或 0x2F,那么人家一看就知道是十六进制。而且%#x和%#X中,笔者觉得大写的比较好,因为大写是绝对标准的十六进制写法。

  • 相关阅读:
    Chroot 特性 ?
    服务端处理 Watcher 实现 ?
    四种类型的数据节点 Znode ?
    Zookeeper 文件系统 ?
    ZooKeeper 面试题?
    Mapper 编写有哪几种方式?
    Mybatis 的一级、二级缓存?
    Mybatis 是否支持延迟加载?如果支持,它的实现原理是什么?
    一对一、一对多的关联查询 ?
    Mybatis 的 Xml 映射文件中,不同的 Xml 映射文件,id 是否可以重复?
  • 原文地址:https://www.cnblogs.com/code-fun/p/15036616.html
Copyright © 2020-2023  润新知