《C++ Primer Plus》第4章复合类型

文章目录

数组

数组是一种数据格式,能够存储多个同类型的值。要创建数组,可使用声明语句,数组声明要指出:存储在每个元素中的值的类型、数组名、数组中的元素数。数组声明能够使用一个声明创建大量的变量,然后便可以用索引来标识和访问各个元素。

typename arrayName[arraySize];

short months[12];

数组的初始化规则:只有在定义数组时才能使用初始化,可以使用下标分别给数组中的元素赋值。

字符串

字符串常量(使用双引号)不能与字符常量(使用单引号)互换。'S'是83的另一种写法,而"S"表示的是两个字符(字符S和\0)

sizeof运算符指出整个数组的长度,strlen()函数返回的是存储在数组中的字符串的长度。

getline()函数读取整行,使用通过回车键输入的换行符来确定输入结尾。调用这种方法,使用cin.getline()。该函数有两个参数,第一个参数是用来存储输入行的数组的名称,第二个参数是要读取的字符数。如cin.get(name,20);getline()函数每次读取一行,通过换行符来确定符尾,但不保存换行符,而是在存储字符串时,用空字符来替换换行符。get()方法不再读取并丢弃换行符,而是将其留在队列中。get()会使输入更仔细,通过查看下一个输入字符,如果是换行符就说明读取了整行,否则该行还有其他的输入。getline()使用更加简单,get()使得检查错误更简单。

string类

要使用string类,必须在程序中包含头文件string,string类位于名称空间std中,要提供一条using编译指令。可以使用运算符+将两个string对象合并起来。使用字符数组会存在目标数组过小无法存储指定信息的危险,但是string类具有自动调整大小的功能。

结构

同一个结构可以存储多种类型的数据。外部声明可以被其后面的任何函数使用,而内部声明只能被该声明所属的函数使用。通常使用外部声明,这样所有的函数都可以使用这种类型的结构。

cpp 复制代码
struct inflatable
{
   char name[20];
   float volume;
   double prince;
};

共用体

能够存储不同的数据类型,但只能同时存储其中的一种类型。由于共用体每次只能存储一个值,因此它必须有足够的空间来存储最大的成员,所以共用体的长度为其最大成员的长度。共用体的用途之一是当数据像是两种或更多种格式(但不会同时使用)可节省空间。

枚举

enum工具提供一种创建符号常量的方式,这种方式可以代替const。
enum spectrum {red, yellow, green, blue,violet};

相关推荐
Vincent_Vang几秒前
多态 、抽象类、抽象类和具体类的区别、抽象方法和具体方法的区别 以及 重载和重写的相同和不同之处
java·开发语言·前端·ide
qualifying几秒前
JavaEE——多线程(3)
java·开发语言·java-ee
Fate_I_C3 分钟前
Kotlin 中的 suspend(挂起函数)
android·开发语言·kotlin
周亚鑫5 分钟前
vue3 js代码混淆
开发语言·javascript·ecmascript
天赐学c语言5 分钟前
12.30 - 合并区间 && C++中class和C语言中struct的区别
c语言·c++·算法·leecode
陳103011 分钟前
C++:vector(1)
开发语言·c++
棉晗榜12 分钟前
WPF将程序集里面嵌入的资源文件下载到本机磁盘中,将项目中的文件下载到桌面
开发语言·wpf
人道领域19 分钟前
【零基础学java】(Map集合)
java·开发语言
杀死那个蝈坦20 分钟前
JUC并发编程day1
java·开发语言
lly20240620 分钟前
SQLite Alter 命令详解
开发语言