C中printf的输出格式类型和%g的用法
%g是C语言printf()函数的一个输出格式类型,它表示以%f%e中较短的输出宽度输出单、双精度实数,在指数小于-4或者大于等于精度时使用%e格式
printf()输出格式类型说明:
输出类型 格式字符意义
a 浮点数、十六进制数字和p-计数法(C99)
A 浮点数、十六进制数字和p-计数法(C99)
c 输出单个字符
d 以十进制形式输出带符号整数(正数不输出符号)
e 以指数形式输出单、双精度实数 指数标识为e
E 以指数形式输出单、双精度实数 指数标识为E
f 以小数形式输出单、双精度实数
G 以%f%E中较短的输出宽度输出单、双精度实数,在指数小于-4或者大于等于精度时使用%E格式
i 有符号十进制整数(与%d相同)
o 以八进制形式输出无符号整数(不输出前缀O)
p 输出内存地址形式数据(16进制)
s 输出字符串
x 以十六进制形式输出无符号整数(不输出前缀OX)
X 以十六进制形式输出无符号整数(不输出前缀OX)
u 以十进制形式输出无符号整数
PS: 有关%g输出的补充说明
%g用于打印浮点型数据时,会去掉多余的零,至多保留六位有效数字(不同于%e的默认保留小数点后6位)
当%g用于打印超过6位的浮点型数据时,因为精度问题,%f不得不输出一个不精确的超过六位的数字,%e也是同样,而%g此时会选择%e格式进行输出,并且按第一条要求,去掉多余的零,并且四舍五入到6位数字。这是《C Primer Plus》中所说的超过精度的时候的情况。 (可见,这个6位,是按float类型精度来计算的。)
当一个数字的绝对值很小的时候,要表示这个数字所需要的字符数目就会多到让人难以接受。举例而言,如果我们把π*10^-10写作0.00000000000314159就会显得非常丑陋不雅,反之,如果我们写作3.14159e-10,就不但简洁而且易读好懂。当指数是-4时,这两种表现形式大小相同。对于比较小的数值,除非该数的指数小于或者等于-5,%g才会采用科学技术发来表示,即,以%e的格式进行输出。
C中printf的输出格式类型和%g的用法相关推荐
- 数据库中的字段varchar类型和char类型的区别?
数据库中的字段varchar类型和char类型的区别? 目录 数据库中的字段varchar类型和char类型的区别?
- js中的boolean原始类型和Boolean引用类型
js 代码 var bFound = true; var bFlag = false; 如上面的两行代码,boolean类型是JavaScript中的一种原始类型,它只有两种值:true和false. ...
- void类型和void *的用法
转自:https://blog.csdn.net/wang13342322203/article/details/85338677 C语言中的void和void *总结 1.void的作用 c语言中, ...
- Java中基本数据类型和Object之间的关系
1.基本数据类型和Object之间是没有关系的 2.基本数据类型的包装类 例如int 的包装类Integer的父类则是Object 输入:12 解释:在赋值的过程中进行自动装箱
- java long 对应mybati类型_修改 mybatis-generator 中数据库类型和 Java 类型的映射关系...
使用 mybatis-generator 发现数据库类型是 tinyint(4) , 生成 model 时字段类型是 Byte ,使用的时候有点不便 数据库的类型和 Model 中 Java 类型的关 ...
- java 8 Stream中操作类型和peek的使用
文章目录 简介 中间操作和终止操作 peek 结论 java 8 Stream中操作类型和peek的使用 简介 java 8 stream作为流式操作有两种操作类型,中间操作和终止操作.这两种有什么区 ...
- android float类型保留两位小数_你知道MySQL中Decimal类型和Float Double的区别吗?
出处:cnblogs.com/panchanggui/p/10766607.html MySQL中存在float,double等非标准数据类型,也有decimal这种标准数据类型. 其区别在于,flo ...
- Python中编码问题:u'\xe6\x97\xa0\xe5\x90\x8d' 类型和 ‘\u559c\u6b22\u4e00\u4e2a\u4eba ’ 转为utf-8的解决办法...
Python中编码问题:u'\xe6\x97\xa0\xe5\x90\x8d' 类型和 '\u559c\u6b22\u4e00\u4e2a\u4eba ' 转为utf-8的解决办法 相信小伙伴们遇到过 ...
- Python中编码问题:u‘\xe6\x97\xa0\xe5\x90\x8d‘ 类型和 ‘\u559c\u6b22\u4e00\u4e2a\u4eba ’ 转为utf-8的解决办法
Python中编码问题:u'\xe6\x97\xa0\xe5\x90\x8d' 类型和 '\u559c\u6b22\u4e00\u4e2a\u4eba ' 转为utf-8的解决办法 参考文章: (1) ...
最新文章
- oracle分组_MySQL分组取TOP,实现Oracle的ROW_NUMBER函数的功能
- 让用户故事真的像故事那样
- An internal error occurred during: “AppXray Indexing
- 接雨水—leetcode42
- SpringMVC介绍之Validation
- UVAlive 6131 dp+斜率优化
- Python自动化面试常见的编程题及答案
- 27.Qt操作sqlite3数据库
- Raki的读paper小记:DEBERTA: DECODING-ENHANCED BERT WITH DISENTANGLED ATTENTION
- pchunter驱动加载失败_电脑开机显示自动修复失败无法进入系统,解决方法
- go Test Benchmark 性能测试
- 《Adaptive Unfolding Total Variation Network for Low-Light Image Enhancement》2021ICCV 弱光增强
- Python_bug之Numpy问题
- 手把手学习Vue3.0:CSS样式基础和HTML5基础收藏
- linux字体渲染包,CentOS 7用了本站一条命令字体渲染包前后的字体效果展示
- 最短路:求最长最短路,求最短路的路径
- 项目管理必看书籍推荐,15本全送给你
- 大集中系统的个人所得税解决方案
- 【Jailhouse 文章】Certify the Uncertified Towards Assessment of Virtualization for Mixed-criticality...
- T37 合并EndNote的PDF
热门文章
- 根据域名展示对应备案号内容的共用站点默认页面index.html
- 小程序为什么要办理ICP增值电信业务经营许可证
- 18位身份证号验证算法的原理以及C#实现和在管理系统的应用
- springboot毕设项目游泳馆管理系统2069l(java+VUE+Mybatis+Maven+Mysql)
- 费曼学习法为什么会如此有魅力
- Linux ls 命令学习和简单使用
- 计算机网络原理系列学习笔记(七)——网络安全
- 购物车模块redis和mysql_redis解决购物车的问题
- 女人拉屎故事_一个敏锐的女性下午的故事
- 用html语言设计李白的一首诗,李白诗《赠汪伦》教学设计