重拾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语 ...
随机推荐
- PHP+MySQL实现对一段时间内每天数据统计优化操作实例
http://www.jb51.net/article/136685.htm 这篇文章主要介绍了PHP+MySQL实现对一段时间内每天数据统计优化操作,结合具体实例形式分析了php针对mysql查询统 ...
- 移动端遇到的bug (长期更新)
移动端遇到的bug border-radius和transform在一起的bug 当父级设置了border-radius+overflow:hidden的时候,圆角是可以包住子级的,这是个很常见的场景 ...
- H3C 衡量路由协议的主要指标
- tf.contrib.learn.preprocessing.VocabularyProcessor()
tf.contrib.learn.preprocessing.VocabularyProcessor (max_document_length, min_frequency=0, vocabulary ...
- 备战省赛组队训练赛第十八场(UPC)
传送门 题解:by 青岛大学 A:https://blog.csdn.net/birdmanqin/article/details/89789424 B:https://blog.csdn.net/b ...
- VUE框架思想
学习VUE的第一步就是先了解这个框架的的核心思想 Vue.js的核心思想就是,它是一套__渐进式的自底层向上增量开发__的__MVVM__结构的框架 什么是框架? 简单的讲,框架就是将与业务无关的重复 ...
- SpringBoot的四种定时任务
定时任务实现的几种方式: Timer:这是java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务. 使用这种方式可以让你的程序按照某一个频度执行 ...
- Maven 运行 tomcat:run 时出现 Unable to compile class for JSP...
近来无事便去看了看神奇的 Maven , 但写第一个 Hello,World 就非常不友好的怼给我一个 500, 很是郁闷; 开发环境: JDK1.8, Maven 3.5 项目目录: \maven_ ...
- vue 插件大全
UI组件 element - 饿了么出品的Vue2的web UI工具套件 Vux - 基于Vue和WeUI的组件库 mint-ui - Vue 2的移动UI元素 iview - 基于 Vuejs 的开 ...
- springmvc 参数校验/aop失效/@PathVariable 参数为空
添加依赖 <!-- 参数校验 --> <dependency> <groupId>org.hibernate.validator</groupId> & ...