IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C++语言学习日志2.26 -> 正文阅读

[C++知识库]C++语言学习日志2.26

初入C++:

跟C语言很多都很相似,主要从不同之处学习。

(1)、I/O流控制:流是一种抽象概念,他代表了数据的无结构化传递。按照流的方式进行输入输出,数据被当成无结构的字节序或字符序列。从流中取得数据的操作称为提取操作,而向流中添加数据的操作称为插入操作。用来进行输入输出操作的流就称为IO流。换句话说,IO流就是以流的方式进行输入输出

????????C++中的输出就是cout,我们可以使用插入操作符“<<”向cout输出流中插入字符。

而输入就是cin,用">>"从输入流中抽取字符。

不管把什么基本数据类型的名字或值传给流,他都能懂。

cout可以在一行中串联,也可以分在几行,提高可读性,cin也可以用和cout一样的方式调整行,它自动识别变量位置和类型。比如:

cout<<"My name is John\n";
cout<<"the ID is";
cout<<2;
cout<<endl;
//等效于下面的几种形式1
cout<<"My name is John\n"<<"the ID is"<<2<<endl;
//2
cout<<"My name is John\n"    //行末无分号
    <<"the ID is"
    <<2
    <<endl;

(2)、使用控制符

? ? ? ? 流的默认格式输出有时不能满足特殊要求。例如:

double average = 9.400067;
cout << average <<endl;

希望显示的是9.40,即保留两位小数,可是却会显示9.40007,默认显示6位有效位。

? ? ? ? 所以可以用控制符,对I/O流的格式进行控制。控制符是在头文件iomanip中定义的对象。可以直接将控制符插入流中,常用控制符所示。如:

? ? ? ? 使用控制符时,要在程序头上加上头文件#include<iomanip>。

(3)控制浮点数值显示

? ? ? ? 使用setprecision(n)可控制输出流显示浮点数的数字个数,C++默认的输出流值有效位数是6.

? ? ? ? 如果是setprecision(n)与fixed合用,可以控制小数点右边的数字个数。fixed是设置定点小数表示法。

????????如果与scientific合用,可以控制指数表示法的小数位数。

? ? ? ? 例如:

? ? ? ???

?在普通表示的输出中,setprecision(n)表示有效位数。

在确定表示的输出中,setprecision(n)表示小数位数,这就是第七行输出结果的原因。

而在指数形式输出时,setprecision(n)表示小数位数,例如第八行,输出用scientific来表示指数的输出形式,其有效位数沿用上次设置的值8,小数位数截短显示时,进行四舍五入处理。

(4)设置值的输出宽度

? ? ? ? 除了使用空格来强行控制输出间隔外,还可以用setw(n)控制符。

如果一个值的显示数需要比setw (n) 确定的字符n更多,就会显示该值的所有字符,

如果比之更少,就会在数字字符前显示空白。它不同于其他控制符,它仅仅影响下一个数值的输出,不会保存。

(5)输出八进制数和十六进制数

? ? ? ? 3个常用的控制符是hex、oct和dec,分别对应十六进制、八进制和十进制数的显示,定义一个整数时,如果在之后使用hex、oct,是在原本的十进制数上计算机自动帮你进行进制转化,而不能把它理解成十六进制数或八进制数。

? ? ? ? 还有用uppercase可以控制16进制数大写输出。例如:

int number=1001;
cout<<"Hexadecimal:"<<hex<<uppercase<<number<<endl;
//结果显示为
//Hexadecimal:3E9

(6)设置填充字符

? ? ? ? setw可以用来确定显示的宽度。默认时,流使用空格符来保证字符间的正确间隔。用setfill控制符可以确定setw所规定的间隔字符。setfill在头文件iomanip中定义。例如:

?(7)左右对齐输出

? ? ? ? 默认时,I/O流左对齐子串,右对齐数值。使用left和right标志,可以控制输出对齐,例如:

?(8)强制显示小数点和符号

? ? ? ? 当程序输出下面的代码时:

cout<<10.0/2<<endl;

默认的流会简单的显示2,不会显示小数点,当需要显示小数点时,可以用showpoint标志。

cout<<showpoint<<10.0/5<<endl;
//运行结果为:
//2.00000

默认时,流仅在负数之前显示值的符号,我们可以用showpos来在正数前加正数,例如:

cout<<showpos<<10<<" "<<-20<<endl;
//运行结果为:
//+10 -20

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-02-28 15:10:05  更:2022-02-28 15:11:33 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 7:57:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码