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

相关推荐
lsx2024062 小时前
JavaScript Array(数组)
开发语言
小柯博客2 小时前
Amazon Kinesis Video Streams C WebRTC SDK 开发实战
c语言·开发语言·网络·stm32·嵌入式硬件·webrtc·yocto
rannn_1112 小时前
3h速通Python:用Java的思维看懂Python
开发语言·python·ai·ai agent·大模型应用开发
6Hzlia2 小时前
【Hot 100 刷题计划】 LeetCode 21. 合并两个有序链表 | C++ 经典迭代与 Dummy 技巧
c++·leetcode·链表
上弦月-编程2 小时前
C语言位运算:从入门到精通
运维·c语言·开发语言·vscode·算法·leetcode·极限编程
minglie12 小时前
c语言面向对象的led
c语言·开发语言
汉克老师2 小时前
GESP2023年6月认证C++三级( 第三部分编程题(2、密码合规检测))
c++·字符串·gesp三级·gesp3级
奇妙之二进制2 小时前
fastdds源码分析之WriterListener
linux·开发语言·dds
小园子的小菜2 小时前
生产实战|冷热数据转换:从识别、触发到落地全流程解析
java·开发语言·spring
zhangzeyuaaa2 小时前
Python协程
开发语言·python