C/C++:printf 函数格式化输出,用法详细记录
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 函数格式化输出,用法详细记录的更多相关文章
- printf 格式化输出符号详细说明(转)
%a 浮点数.十六进制数字和p-记数法(C99)%A 浮点数.十六进制数字和p-记法(C99)%c 一个字符(char) %C 一个ISO宽字符 %d 有符 ...
- c++中利用localtime_s函数格式化输出当地日期与时间
Visual C++ 6.0开发环境中显示当地日期与时间主要通过localtime()函数来实现,该函数的原型在time.h头文件中,其语法格式如下: struct tm *localtime(xon ...
- 2、python的print函数格式化输出
1.格式化输出浮点数(float) pi = 3.141592653 print('%10.3f' % pi) #字段宽10,精度3 ,结果 print('%010.3f' % pi) #用0填充 ...
- python中实现格式化输出 %用法
当我们在python中需要打印出特定格式的内容时可以用到这个方法,方法介绍如下: 例如我们现在要收集用户的一些个人信息,这时候我们的代码如下: name=input("name: " ...
- thinkphp 前台html调用函数 格式化输出
仅仅是输出变量并不能满足模板输出的需要,内置模板引擎支持对模板变量使用调节器和格式化功能,其实也就是提供函数支持,并支持多个函数同时使用.用于模板标签的函数可以是PHP内置函数或者是用户自定义函数,和 ...
- printf("%*s\n", 1, ""); 使用"printf();" 的格式化输出动态制定等宽度输出。
#include <stdio.h> #include <string.h> int main() { const char the_text[] = "this i ...
- php中sprintf与printf函数用法区别
下面是一个示例:四舍五入保留小数点后两位 代码如下 复制代码 <?php$num1 = 21;echo sprintf("%0.2f",$num1)."<b ...
- C语言 printf格式化输出,参数详解
有关输出对齐 int main(int argc, char* argv[]){ char insertTime[20] = {"1234567890"}; double in ...
- 自学Python1.8-python input/print用法 格式化输出
自学Python之路 自学Python1.8-python input/print用法 格式化输出 1.input函数 Python3.x 中 input() 函数接受一个标准输入数据,返回为 str ...
- C printf格式化输出
转载:https://blog.csdn.net/wucz122140729/article/details/98434702 格式化输出 格式化输出的函数有printf.sprintf和 ...
随机推荐
- 泛微e-cology OA 远程代码执行漏洞复现
复现过程: 直接使用FOFA搜索语法搜索,找了好久才找到含有漏洞的站点. 在根目录后面输入漏洞路径: /weaver/bsh.servlet.BshServlet 进入BeanShell操作页面 在S ...
- Vue2 中keyup.enter触发问题!
结合Element-UI开发的过程需求需要添加表单的默认Enter事件,但是当文本框或者元素没有获取焦点的时候回车事件未触发: 存在元素输入框修改语句:@keyup.native.enter 如果是f ...
- mybatis中多条件模糊查询不显示数据的问题
在写查询语句时:
- 记:java.lang.IllegalArgumentException: DAY_OF_MONTH 报错
查询的时候报错: 月份中的天数错误 原因: date日期列中有数据错误 修改数据库中错误的数据就可以了.
- Ginan-PEA例程下载
输入以下命令可在Ubuntu系统中进行下载,但受到网络限制并不能有效下载或者下载很慢 python3 scripts/download_examples.py 通过阅读python脚本,可将下载网址拷 ...
- xfce-debian10 英文环境安装配置记录
Centos还没有用利索(因为我听说debian是更纯正的社区开源项目???可是这对于我这样毫无技术菜鸟来说有什么关系呢???可是耐不住心中的悸动???悸动又从哪里了呢???哎,不管了),突然心血来潮 ...
- 云计算——实验3:AWS实验-EC2操作
本次实验属于验证型实验,通过本次实验学生将掌握以下内容: 1.EC2免费实例创建方法: 2.EC2实例SSH连接以及命令使用. 我使用阿里云进行注册和远程连接,aws需要使用信用卡,国内的比较省事. ...
- 谈谈关于CDN缓存
一.CDN是什么? 谈到CDN的作用,可以用8年买火车票的经历来形象比喻: 8年前,还没有火车票代售点一说,12306.cn更是无从说起.那时候火车票还只能在火车站的售票大厅购买,而我所住的小县城并不 ...
- mybatis的自定义类型转化器如何使用
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-/ ...
- java后端JVM面试资料
目录 JDK,JRE,JVM三者的区别与联系 讲⼀讲JVM跨平台与跨语⾔ JVM的运⾏时数据区有哪些? 什么是堆内存?堆内存包含哪些部分? 什么是内存溢出 什么是内存泄漏?与内存溢出有什么关系? 对象 ...