printf ( print format )函数是接触C/C++之后接触的第一个函数,它的功能除了输出hello world外,更重要的是进行格式化输出,比如输出整数的%d,输出小数的%f,%lf 等等。

printf 格式化输出的完整格式为:% [flag] [width] [.precision] type
其中,常用等级为 type > [.precision] > [flag] > [width]
注意,实际使用的时候不带 [ ] .

1. type

type 用法说明
%c 输出一个字符
%s 输出字符串
%hd %d %ld 以十进制输出short,int,long类型变量
%ho %o %lo 以八进制输出short,int,long类型变量
%hx %x %lx 以十六进制输出short,int,long类型变量,且字母小写
%hX %X %lX 以十六进制输出short,int,long类型变量,且字母大写
%#hx %#x %#lx 加上#号,在前边加上0x,比如十六进制的a123变为0xa123
%f %lf 以十进制输出 float,double 类型变量
%e %le 以科学技术法输出 float,double 类型变量,且e为小写,比如0.0012就写为1.2e-3
%E %lE 以科学技术法输出 float,double 类型变量,且e为大写,比如0.0012就写为1.2E-3
%g %lg 以科学技术法或者十进制输出 float,double 类型变量,他会对比十进制输出和科学计数法哪个字符长度短,就用哪个输出,比如0.000012用十进制表示需要8个字符,用科学计数法1.2e-5只需要6个字符,则用科学计数法输出

2. [.precision]

对于小数,[.precision] 指定输出精度,即输出保留到小数点后多少位(主要用法)
对于整数,则表示最短输出长度,位数不足会在前边补0,比如 %.4d 输出23,输出为0023
对于字符串,表示最大输出长度,即截取字符串输出。

例子:

3. [flag]

flag 用法说明
- 多行输出的时候,左对齐输出
+ 带正负号输出
空格 带正负号输出,不过把正号换成了空格
# 对于整数,要求输出禁止前缀,比如0x;对于小数,则强迫输出小数点之后的

4. [width]

指定最小输出长度,不足部分用空格补齐,使输出比较好看,当数据长度大于width时,width不再对数字生效

C/C++:printf 函数格式化输出,用法详细记录的更多相关文章

  1. printf 格式化输出符号详细说明(转)

    %a             浮点数.十六进制数字和p-记数法(C99)%A 浮点数.十六进制数字和p-记法(C99)%c 一个字符(char) %C           一个ISO宽字符 %d 有符 ...

  2. c++中利用localtime_s函数格式化输出当地日期与时间

    Visual C++ 6.0开发环境中显示当地日期与时间主要通过localtime()函数来实现,该函数的原型在time.h头文件中,其语法格式如下: struct tm *localtime(xon ...

  3. 2、python的print函数格式化输出

    1.格式化输出浮点数(float) pi = 3.141592653 print('%10.3f' % pi)  #字段宽10,精度3 ,结果 print('%010.3f' % pi)  #用0填充 ...

  4. python中实现格式化输出 %用法

    当我们在python中需要打印出特定格式的内容时可以用到这个方法,方法介绍如下: 例如我们现在要收集用户的一些个人信息,这时候我们的代码如下: name=input("name: " ...

  5. thinkphp 前台html调用函数 格式化输出

    仅仅是输出变量并不能满足模板输出的需要,内置模板引擎支持对模板变量使用调节器和格式化功能,其实也就是提供函数支持,并支持多个函数同时使用.用于模板标签的函数可以是PHP内置函数或者是用户自定义函数,和 ...

  6. printf("%*s\n", 1, ""); 使用"printf();" 的格式化输出动态制定等宽度输出。

    #include <stdio.h> #include <string.h> int main() { const char the_text[] = "this i ...

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

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

  8. C语言 printf格式化输出,参数详解

      有关输出对齐 int main(int argc, char* argv[]){ char insertTime[20] = {"1234567890"}; double in ...

  9. 自学Python1.8-python input/print用法 格式化输出

    自学Python之路 自学Python1.8-python input/print用法 格式化输出 1.input函数 Python3.x 中 input() 函数接受一个标准输入数据,返回为 str ...

  10. C printf格式化输出

    转载:https://blog.csdn.net/wucz122140729/article/details/98434702 格式化输出       格式化输出的函数有printf.sprintf和 ...

随机推荐

  1. Java Development Kit下载地址

    Java Development Kit下载地址 官网下载 一般最新版本无需登录即可下载,其他历史版本需要登录Oracle账户才可以下载. 最新版下载地址: https://www.oracle.co ...

  2. MYSQL --存储引擎的对比

    主要介绍三种 InnoDB .MyISAM .Memory 一.InnoDB 介绍: InnoDB是一种兼顾高可靠性和高性能的通用存储引擎,在MySQL5.5之后默认的存储引擎 特点: DML操作遵循 ...

  3. CentOS 7.9 环境下构建 Python 3.9

    sudo yum -y update sudo yum -y install yum-utils sudo yum-builddep -y python3 curl -O https://www.py ...

  4. jmeter接口之json提取器应用

    在接口测试中有一个这样的场景:业务接口需要用到登录token:下个接口需要用到前个接口返回值作为参数,该怎么实现? 首先先看下登录.业务接口,本文用的jmeter版本为5.4.1 一.json提取器设 ...

  5. java-javaSE-异常机制

    java中的异常结构 java 中的所有异常都来自于顶级父类 Throwable,Throwable 有两个子类 Exception 和 Error Error 是 Java 虚拟机无法解决的严重问题 ...

  6. 安装kvm后,在windows主机启动virt-manger后报错(no polkit agent available to authenticate action org.libvirt.unix.manage)

    解决方法如下: 1. 增加libvirtd用户组 groupadd  libvirtd 2.在你使用的普通用户界面执行 sudo usermod -a -G libvirtd $USER 3.设置启动 ...

  7. 【ubuntu20】设置静态IP

    sudo gedit /etc/netplan/01-network-manager-all.yaml 修改文件为: # Let NetworkManager manage all devices o ...

  8. 若依分离版本+Nginx+docker+jenkins 部署

    准备: jenkins node.js 若依前后分离 docker 最终访问地址: 服务端api地址:192.168.66.74:8086 前端页面地址:192.168.66.61:7001 jenk ...

  9. 掌控安全学院SQL注入靶场-布尔盲注(二)

    首页打开如下 判断注入 闭合报错 先判断数据库的长度....

  10. Mybatis二级缓存(2)

    10.3.一级缓存的原理 10.3.3 一级缓存的测试