《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};

相关推荐
冷雨夜中漫步5 小时前
Python快速入门(6)——for/if/while语句
开发语言·经验分享·笔记·python
半桔6 小时前
【IO多路转接】高并发服务器实战:Reactor 框架与 Epoll 机制的封装与设计逻辑
linux·运维·服务器·c++·io
HABuo6 小时前
【linux文件系统】磁盘结构&文件系统详谈
linux·运维·服务器·c语言·c++·ubuntu·centos
我在人间贩卖青春7 小时前
C++之多重继承
c++·多重继承
m0_736919107 小时前
C++代码风格检查工具
开发语言·c++·算法
2501_944934737 小时前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
黎雁·泠崖8 小时前
【魔法森林冒险】5/14 Allen类(三):任务进度与状态管理
java·开发语言
2301_763472469 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
阿猿收手吧!9 小时前
【C++】std::promise原理与实战解析
c++
TechWJ9 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto