重拾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语 ...
随机推荐
- jQuery中的siblings()的用法
siblings 英文翻译 兄; 弟; 姐; 妹; 的意思 siblings()用于查找当前元素的同胞元素,就是拿到当前元素的兄弟节点(不包括自己). 给当前元素设置新的样式,并删除当前元 ...
- Activiti - 新一代的开源 BPM 引擎
http://www.ibm.com/developerworks/cn/Java/j-lo-activiti1/ ****************************************** ...
- CSS3 box-sizing 盒子布局
在CSS中盒模型被分为两种,第一种是W3C的标准模型,第二种是IE怪异盒模型.不同之处在于后者的宽高定义的是可见元素框的尺寸,而不是元素框的内容区尺寸.目前对于浏览器大多数元素都是基于W3C标准的盒模 ...
- Bishops Alliance—— 最大上升子序列
原题链接:http://codeforces.com/gym/101147/problem/F 题意:n*n的棋盘,给m个主教的坐标及其私有距离p,以及常数C,求位于同一对角线上满足条件:dist(i ...
- linux 自动检测 IRQ 号
驱动在初始化时最有挑战性的问题中的一个是如何决定设备要使用哪个 IRQ 线. 驱动需 要信息来正确安装处理. 尽管程序员可用请求用户在加载时指定中断号, 这是个坏做法, 因为大部分时间用户不知道这个号 ...
- C# 将 Begin 和 End 异步方法转 task 异步
在 .NET Framework 有两个不同的异步方法,一个是 Asynchronous Programming Model (APM) 另一个是 Task-based asynchronous pa ...
- H3C配置历史命令缓冲大小--接口视图(console为准)
[wang]user-interface console 0 [wang-ui-console0]history-command max-size 30 //配置缓冲区大小 [wang-ui-c ...
- Linux 内核bin+attribute 结构二进制属性
sysfs 惯例调用所有属性来包含一个单个的人可读文本格式的值. 就是说, 只是偶然地很 少需要来创建能够处理大量二进制数据的属性. 这个需要真正地只出现在必须传递数据, 不可动地, 在用户空间和设备 ...
- POJ1741 点分治模板
传送门:http://poj.org/problem?id=1741 题意: 求树上两点间路径长度小于k的点对个数 题解: 参考资料 守望的淀粉质略解:https://www.luogu.org/bl ...
- python 下载bilibili视频
说明: 1.清晰度的选择要登录,暂时还没做,目前下载的视频清晰度都是默认的480P 2.进度条仿linux的,参考了一些博客修改了下,侵删 3.其他评论,弹幕之类的相关爬虫代码放在了https://g ...