前一章,我们了解了再C++中的标准的输入输出问题,那么肯能就有人会问了再C语言中我们可以灵活的控制输出和显示,那么再再C++中可以实现吗?我的回答是当然可以的,只不过再C++中的控制可能相比较而言要比再C++语言中的繁琐一点,那么我们就先来看看最C++中的格式控制(以下所有资料均来自与http://www.cplusplus.com):

1、基数设置方法:

    dec  10进制数  相当于%d

    hex  16进制数  相当于%x

    oct  8进制数   相当于%o

 #include <iostream>

 using namespace std;

 int main(int argc, char **argv)
{
int val = ;
cout << "dec: " << dec << val << endl;
cout << "hex: " << hex << val << endl;
cout << "oct: " << oct << val << endl;
return ;
}

  输出结果为:

dec:
hex:
oct:

  2、浮点数的格式控制

  setprecision(n)                     设置显示小数精度为n位

  setiosflags(ios::fixed)             固定的浮点显示

  setiosflags(ios::scientific)        指数表示

  setiosflags(ios::left)              左对齐

  setiosflags(ios::right)             右对齐

 #include <iostream>
using namespace std;
#include <iomanip> int main(int argc, char **argv)
{
double dv = 123456.654321; cout << "dv的默认输出: " << dv << endl;
cout << "dv指定为浮点数输出: " << setiosflags(ios::fixed)
<< dv << endl;
cout << "dv指定为浮点数输出,并保留两位小数: " << setiosflags(ios::fixed)
<< setprecision() << dv << endl;
cout << "dv指定为指数形式输出(默认保留5位小数):" << setiosflags(ios::scientific)
<< dv << endl;
cout << "dv指定为指数形式输出,并保留10位小数:" << setiosflags(ios::scientific)
<< setprecision() << dv << endl;
cout << setiosflags(ios::left) << setprecision() << dv << endl;
cout << setiosflags(ios::right) << setprecision() << dv << endl;
return ;
}

输出结果为:

 dv的默认输出:
dv指定为浮点数输出: 123456.654321
dv指定为浮点数输出,并保留两位小数: 123456.65
dv指定为指数形式输出(默认保留5位小数):1.2e+05
dv指定为指数形式输出,并保留10位小数:123456.6543
1.2346e+05

setw(n)                             设置域宽为n个字符

setfill(char);           设置填充字符

 #include <iostream>
using namespace std;
#include <iomanip> int main(int argc, char **argv)
{
int val = ;
double pi = 3.14; //输出宽度为10,左对齐,不足就填充‘*’
cout << "val: " << setw() <<setiosflags(ios::left)
<< setfill('*') << val << endl;
//输出宽度为10,右对齐,不足就填充‘*’
cout << "pi: " << setw() << setiosflags(ios::right)
<< setfill('*')<< pi << endl;
return ;
}

关于C++中的格式控制就先说道这儿,当然除了我们上边提到的还有很多格式控制方法,具体就有待大家去查询了。

C++学习笔记1(扩充:C++中的格式控制)的更多相关文章

  1. Android(java)学习笔记167:Java中操作文件的类介绍(File + IO流)

    1.File类:对硬盘上的文件和目录进行操作的类.    File类是文件和目录路径名抽象表现形式  构造函数:        1) File(String pathname)       Creat ...

  2. [C#] 类型学习笔记一:CLR中的类型,装箱和拆箱

    在学习.NET的时候,因为一些疑问,让我打算把.NET的类型篇做一个总结.总结以三篇博文的形式呈现. 这篇博文,作为三篇博文的第一篇,主要探讨了.NET Framework中的基本类型,以及这些类型一 ...

  3. [原创]java WEB学习笔记39:EL中的运算符号(算术运算符,关系运算符,逻辑运算符,empty运算符,条件运算符,括号运算符)

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  4. [原创]java WEB学习笔记38:EL 中的 11个 隐含对象 详解

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  5. [原创]java WEB学习笔记05:Servlet中的ServletConfig对象

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  6. Android(java)学习笔记110:Java中操作文件的类介绍(File + IO流)

    1.File类:对硬盘上的文件和目录进行操作的类.    File类是文件和目录路径名抽象表现形式  构造函数:        1) File(String pathname)       Creat ...

  7. Python学习笔记之从文件中读取数据

    10-1 Python 学习笔记:在文本编辑器中新建一个文件,写几句话来总结一下你至此学到的Python 知识,其中每一行都以“In Python you can”打头.将这个文件命名为learnin ...

  8. Docker学习笔记之-在CentOS中安装Docker

    上一节演示了如何 通过Xshell连接CentOS服务,链接:Docker学习笔记之-通过Xshell连接 CentOS服务 本节将演示 如何在CentOS中安装 Docker 第一步:更新系统包到最 ...

  9. Java泛型学习笔记 - (七)浅析泛型中通配符的使用

    一.基本概念:在学习Java泛型的过程中, 通配符是较难理解的一部分. 主要有以下三类:1. 无边界的通配符(Unbounded Wildcards), 就是<?>, 比如List< ...

随机推荐

  1. [POJ1088] 滑雪(递归dp)

    Description Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激.可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你.Michael想知道 ...

  2. wemall app商城源码中基于JAVA的Android异步加载图片管理器代码

    wemall doraemon是Android客户端程序,服务端采用wemall微信商城,不对原商城做任何修改,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可随意定制修改.本文分享其中 ...

  3. 基于 Koa平台Node.js开发的KoaHub.js连接打印机的代码

    最近好多小伙伴都在做微信商城的项目,那就给大家分享一个基于 Koa.js 平台的 Node.js web 开发的框架连接微信易联云打印机接口的代码,供大家学习.koahub-yilianyun 微信易 ...

  4. 1596: [Usaco2008 Jan]电话网络

    1596: [Usaco2008 Jan]电话网络 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 601  Solved: 265[Submit][S ...

  5. 1270: [BeijingWc2008]雷涛的小猫

    1270: [BeijingWc2008]雷涛的小猫 Time Limit: 50 Sec  Memory Limit: 162 MBSubmit: 905  Solved: 430[Submit][ ...

  6. Alamofire源码解读系列(六)之Task代理(TaskDelegate)

    本篇介绍Task代理(TaskDelegate.swift) 前言 我相信可能有80%的同学使用AFNetworking或者Alamofire处理网络事件,并且这两个框架都提供了丰富的功能,我也相信很 ...

  7. Python第五章__模块介绍,常用内置模块

    Python第五章__模块介绍,常用内置模块 欢迎加入Linux_Python学习群  群号:478616847 目录: 模块与导入介绍 包的介绍 time &datetime模块 rando ...

  8. JAVA连接数据库后,对数据库进行增删改查

    1.Statement 增删改: 方法:execute(String SQL) String url="jdbc:Access:///E://A//shop.mdb"; Conne ...

  9. Bug跟踪的流程

    本文以翼发云协同项目管理系统为例子来讲解Bug跟踪的流程,它以工作流为中心的集成式Bug跟踪软件,它广泛地应用于研发行业的产品缺陷管理 与跟踪.事务跟踪.问题跟踪.任务跟踪.查询跟踪.需求管理.变更跟 ...

  10. cuda编程学习5——波纹ripple

    /共有DIM×DIM个像素,每个像素对应一个线程dim3 blocks(DIM/16,DIM/16);//2维dim3 threads(16,16);//2维kernel<<<blo ...