重拾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语 ...
随机推荐
- 纯JS前端分页方法(JS分页)
1.JS分页函数:开发过程中,分页功能一般是后台提供接口,前端只要传page(当前页码)和pageSize(每页最大显示条数)及对应的其他查询条件,就可以返回所需分页显示的数据. 但是有时也需要前端本 ...
- Python--day47--mysql索引注意事项
- KMP未优化模板、
要理解KMP最重要的一点就是防止重复的回溯. !!!很重要!!!很重要!!!很重要 要了解KMP可以去:http://www.cnblogs.com/dolphin0520/archive/2011/ ...
- [转]C#操作Word的超详细总结
本文中用C#来操作Word,包括: 创建Word: 插入文字,选择文字,编辑文字的字号.粗细.颜色.下划线等: 设置段落的首行缩进.行距: 设置页面页边距和纸张大小: 设置页眉.页码: 插入图片,设置 ...
- 移动端遇到的bug (长期更新)
移动端遇到的bug border-radius和transform在一起的bug 当父级设置了border-radius+overflow:hidden的时候,圆角是可以包住子级的,这是个很常见的场景 ...
- 【js】React-Native 初始化时报错
一.按照官网的步骤一步一步的操作,到最后 react-native init AwesomeProject 时就是报错 报错信息如下图 然后我下载了这个模块 npm install prompt ...
- vue-learning:1 - 为什么选择vue
为什么选择Vue 通过一个对比,展示vue框架的优势: 需求:根据请求后端接口返回的数据列表,渲染在页面中. 传统上我们使用jQuery的Ajax发送http请求,获取数据.判断列表数据是否存在,如果 ...
- chrome查看当前网页cookie内容
按下F12,打开开发者工具 然后点开Application,在点击cookie左侧的小三角,选择网页,就可以看见对应的cookies了
- 【Linux】CentOS 7.5 修改时区
1⃣️查看当前CentOS系统版本: [parallels@k8s-node2 ~]$ cat /etc/redhat-release CentOS Linux release 7.5.1804 (C ...
- Mac Tab自动补全键
最近入手一个Mac(Mac 2019版本),在使用终端时,发现不能使用Tab键自动补全代码,网络搜寻下,发现这里有个方法,记录下,免得自己忘记: 1 / 首先找到这个图标 2 / 输入命令 nano ...