重拾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
最新文章
- 总结iOS开发中的断点续传那些事儿
- VMware Workstation 10.0 正式版官方简体中文下载(附序列号)
- POJ3208:Apocalypse Someday
- JAXB - Annotations, Controlling Element Selection: XmlAccessorType, XmlTransient
- 山寨QQ音乐的布局(二)终于把IOS6的UITableView拍扁了
- 调式WP程序报0x80131500错误的解决办法
- 链方法[C# 基础知识系列]专题三:如何用委托包装多个方法——委托链
- JavaScript 方法调用模式和函数调用模式
- (转载)在spring的bean中注入内部类
- Unreal Engine 4 Radiant UI 插件入门教程(二)
- 201521123088 《Java程序设计》第14周学习总结
- RDD内存迭代原理(Resilient Distributed Datasets)---弹性分布式数据集
- A1134. Vertex Cover
- Struts2学习(四)———— ognl表达式、值栈、actionContext之间的关系
- <;--------------------------Java接口如何使用------------------------------>;
- MySQL DataType--字符串类型
- 装饰器 python 你也可以叫语法糖
- ios中地图定位
- 推荐十款java开源中文分词组件
- bzoj 1176 CDQ分治