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 - iostream库 -> 正文阅读

[C++知识库]C++学习笔记2 - iostream库

1、C++标准库介绍

1.1 C++是C的超集

  • 一个典型的C程序(后缀名.c)可以完全被视为C++程序来编译(用g++编译)
  • C程序可以通过__cplusplus符号是否预定义来判断当前是gcc还是g++编译,__cplusplus的值是long int类型的,值表示当前编译程序的C++编译器的版本号。
#include <stdio.h>

int main(void)
{	
	printf("%ld\n",__cplusplus);
	
	return 0;
}

编译:g++ test.cpp
执行:./a.out
输出:199711
说明:说明当前使用的g++编译器的版本号是199711月的
  • 一个典型的C++程序(后缀名.cpp)只能当C++程序来编译,可见C++是C的超集
  • C++文件名的常用后缀:源文件(.cpp .cxx .cc .c .c++),头文件(.hpp .hxx .h),目前最常用的就是.cpp 和 .hpp

1.2 C++完全接收并兼容了C库

  • 典型C++程序中可以支持C的形式,包含C库头文件,并直接使用C库API
  • C++更建议的头文件包含形式不是<stdio.h>这样,而是< cstdio >这样,C++的标准库的头文件是没有后缀名的
  • Ubuntu中gcc工具链的头文件在 /usr/include 中,可以实际看看
  • 这是C库的头文件 /usr/include
    在这里插入图片描述
  • 这是C++库的头文件 /usr/include/c++
    在这里插入图片描述

1.3 C++标准库介绍

  • C标准库即为C++标准库的一部分,完全继承并以C++方式重写,位于std命名空间中
  • C++面向对象库,如string 、iostream等,位于std命名空间中
  • C++ STL标准模板库,如vector、map等,位于std命名空间中

1.4 C++标准库的地位和学习安排

  • C++比C在实际工作中更依赖于库,所以学好C++标准库很重要
  • C++标准库蕴含了C++的各种语言特性的典型用法,学标准库就顺便学好了C++
  • 继承C标准库的部分兼容C的玩法,不用讲了
  • C++面向对象库难度不大,本次先讲iostream和string等初步用法
  • STL部分是重难点,在第3部分-STL等高阶话题中再讲

2、iostream的cout使用

2.1 基本使用

  • cout即标准输出,对应stdout
  • cout定义在std命名空间中,要按三种使用方法来用
  • 结合 << 符号进行输出,可多节连接
  • cout涉及的头文件有 < iostream > 、< iomanip >、 <bits/ios_base.h>。其中 < iostream >是最常用的普通输入输出库,< iomanip > 主要应用于格式化的输入输出,<bits/ios_base.h>属于< iomanip >。
  • cout本质上是 ostream( iostream的派生类)的一个对象
  • 流操作符 << 本质上是左移运算符在 iostream 中的运算符重载(即同样一个运算符,有多个作用)

2.2 流操作符的格式化细节

  • C++ 通常使用 cout 输出数据,和 printf() 函数相比,cout 实现格式化输出数据的方式更加多样化。一方面,cout 作为 ostream 类的对象,该类中提供有一些成员方法,可实现对输出数据的格式化;另一方面,为了方面用户格式化输出数据,C++ 标准库专门提供了一个 < iomanip > 头文件,该头文件中包含有大量的格式控制符(严格意义上称为“流操纵算子”),使用更加方便。
    在这里插入图片描述
#include <iostream>
#include <iomanip>

using namespace std;

int main(void)
{	
	double d = 12000.3456;
	int i = 18;
	
	cout << "hello world" << endl;  		//字符串输出
	cout << i << endl;						//默认十进制变量输出
	cout << hex << i <<endl;   				//十六进制输出
	cout << i << endl;						//变量已默认为十六进制
	cout << dec << i << endl;				//改为十进制
	cout << d << endl;						//默认浮点数变量输出
	cout << setprecision(9) << d <<endl; 	//设置输出浮点数的精度为9
		
	return 0;
}

输出:
hello world
18
12
12
18
12000.3
12000.3456

3、iostream的cin使用

3.1 基本使用

#include <iostream>
#include <iomanip>

using namespace std;

int main(void)
{	
	int val;
	string s;

	cout << "请输入一个数字: " << endl;
	cin >> val;
	cout << "输入的数字为: " << val << endl;
	
	cout << "请输入一个字符串: " << endl;
	cin >> s;
	cout << "输入的字符串为: " << s << endl;
		
	return 0;
}

输出:
请输入一个数字: 
32
输入的数字为: 32
请输入一个字符串: 
hello
输入的字符串为: hello

3.2 注意点

  • 输入的时候不要使用引用符&,在C语言中scanf需要使用&,如 scanf("%d",&val);
  • cin的输入会以空格为中断,如输入hello world,实际只截取了hello。
  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-11-30 15:24:34  更:2021-11-30 15:27:43 
 
开发: 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 9:28:19-

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