重拾c++第二天(4):复合类型
1、定义:种类 数组名[元素个数] = {元素1,...,元素n} ,或者直接赋值:数组名[元素位置] = 值;
2、部分初始化,其他全为0,可以就定义一个0,这样得到0数组(或者就一个{},别的啥也没有)
3、数组元素数 int num = sizeof 数组名/sizeof (数据类型);
4、char数组,字符串以‘\0’结尾
5、 char test[]= "abcde" 这样直接定义字符串
6、 cout<<"abc""de"; 这样是合法的
7、 #include <cstring> 然后可以用 strlen()//字符串长度 ,此处不算'\0'所占长度
8、 cin>>数组名;
9、 cin.getline(数组名,长度); 读取一行数据,无视空格
10、 cin.get()去掉换行符影响 例: (cin>>数组名).get();
11、 #include <string> 而后添加了一种新的数据类型——string,可以直接赋值、拼接
12、原始字符串需要 strcpy() 复制,以及 strcat() 拼接
13、string类型数据可以调用.size()方法得到字符串长度
14、结构体相关

之后定义直接 inflatable 变量名={变量1,...,变量n}; 就行(c++省略了struct),调用时 变量名.变量n
15、结构体一般采用外部申明,放到最前面
16、结构体空的,则初始值是0
17、结构体可以赋值a=b
18、可以在14中结构花括号后直接接变量={};完成定义
19、结构数组
inflatable 变量名[]={
{变量1,...,变量n},
{变量1,...,变量n}
};
20、共用体union定义与结构体相似,但是每次只存储其中一种类型,主要是为了节省内存
21、枚举:enum 新类型名 = {值1,...,值n};
22、&取地址(指针),*取地址(指针)值
23、指针定义例:int* a,b;
24、 类型* 指针名 = new 类型 这样会分配一个合适的存放该类型数据的地址,而后*指针名 = 该类型常量
25、delete 指针名(指针要与new相关)
26、动态数组
类型* 指针名 = new 类型 [长度] ---- delete [] 指针名
指针名[位置]直接调用,等价于数组玩法
27、指针名=指针名+1 相当于元素全体右移,此时delete会失败
28、*(指针名+i)= 指针名[ i ]
29、new结构体两种定位方式: 两种调用方式都可以
、cin.get(ps->name, ) cin>>ps->name
、cin>>(*ps).name
重拾c++第二天(4):复合类型的更多相关文章
- 重拾MVC——第二天:Vue学习与即时密码格式验证
今天是复习MVC的第二天,准备自己写一个后台管理,然后慢慢写大,做全. 个人感觉做 Web 的,前端知识是必备的,所有今天学习了一下 Vue,很多人用这个,我以前没有用过,今天把它补起来. 比较了各个 ...
- 【Java】 重拾Java入门
[概论与基本语法] 取这个标题,还是感觉有些大言不惭.之前大三的时候自学过一些基本的java知识,大概到了能独立写一个GUI出来的水平把,不过后来随着有了其他目标,就把这块放下了.之后常年没有用,早就 ...
- Hive 文件格式 & Hive操作(外部表、内部表、区、桶、视图、索引、join用法、内置操作符与函数、复合类型、用户自定义函数UDF、查询优化和权限控制)
本博文的主要内容如下: Hive文件存储格式 Hive 操作之表操作:创建外.内部表 Hive操作之表操作:表查询 Hive操作之表操作:数据加载 Hive操作之表操作:插入单表.插入多表 Hive语 ...
- CSS魔法堂:重拾Border之——不仅仅是圆角
前言 当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...
- CSS魔法堂:重拾Border之——图片作边框
前言 当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...
- go - 复合类型 array, slice, map
Go 语言支持复合类型: 数组:array 切片:slice 指针:pointer 字典:map 通道:chan 结构体:struct 接口:interface 1. array 同一类型数据的集 ...
- 《C++ Primer Plus》读书笔记之二—复合类型
二.第四章 复合类型 1.C-风格字符串:C-风格字符串具有一种特殊的性质:以空字符结尾,空字符被写成\0,其ASC||编码为0,用来标记字符串的结尾.例如: char dog[5]={'b','e ...
- 重拾C#教程:变量
一个变量只不过是一个供程序操作的存储区的名字.在 C# 中,每个变量都有一个特定的类型,类型决定了变量的内存大小和布局.范围内的值可以存储在内存中,可以对变量进行一系列操作. 我们已经讨论了各种数据类 ...
- Golang - 复合类型
目录 Golang - 复合类型 1. 指针 2. new()和make() 3. 数组 4. slice 5. Map 6. 结构体 7. 结构体参数 Golang - 复合类型 1. 指针 go语 ...
随机推荐
- Spring与C3p0连接数据库对事务操作
maven包: <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncodin ...
- vue调用兄弟组件的方法使用vueBus调用$emit、$on(只需触发方法即可,不需要考虑传值或参数的问题)
触发方: vueBus.$emit('queryAll') 被触发方: created() { vueBus.$on('queryAll', () => { this.getList() // ...
- P1002 Hello,World!
题目描述 输出"Hello Wolrd!". 输入格式 无. 输出格式 输出一行"Hello World!". 样例输入 无. 样例输出 Hello World ...
- H3C配置Trunk端口
- linux进程 阻塞和非阻塞操作
在我们看全功能的 read 和 write 方法的实现之前, 我们触及的最后一点是决定何时使 进程睡眠. 有时实现正确的 unix 语义要求一个操作不阻塞, 即便它不能完全地进行下去. 有时还有调用进 ...
- 关于better-scroll的使用注意事项
better-scroll的原理 1.什么是 better-scroll? better-scroll 是一个移动端滚动的解决方案,它不仅可以做普通的滚动列表,还可以做轮播图.picker 等等. 2 ...
- Spark MLlib 示例代码阅读
阅读前提:有一定的机器学习基础, 本文重点面向的是应用,至于机器学习的相关复杂理论和优化理论,还是多多看论文,初学者推荐Ng的公开课 /* * Licensed to the Apache Softw ...
- oracle中update语句修改多个字段
如需要修改下列数据:表名为student 一般会这样写: update student set sname = '李四', sage = 20, sbirthday = to_date('2010-0 ...
- .NET进阶篇07-.NET和COM
知识需要不断积累.总结和沉淀,思考和写作是成长的催化剂 内容目录 一.COM和.NET元数据内存管理接口注册线程编组二..NET客户端调用COM组件三.COM客户端调用.NET组件四.嵌入互操作类型五 ...
- VMware Workstation 与 Device/Credential Guard 不兼容.在禁用 Device/Credenti
出现问题的原因: 原因一.出现此问题的原因是Device Guard或Credential Guard与Workstation不兼容. 原因二.Windows系统的Hyper-V不兼容导致. 解决方案 ...