C++的学习笔记(第四章:数组及自定义类型)
来源:互联网 发布:ubuntu win7 系统时间 编辑:程序博客网 时间:2024/06/04 22:52
目录
数组
枚举类型
结构类型
联合类型
正文
一。数组:定义数组:注意点:数组对sizeof的使用;还有对传递后的数组的使用。
注意区分数组和字符串。【主要有两点区别 1:字符数组的结尾必须搞个'\0'(ascall码值为0);2.数组可以实现定位这个功能】
数组的初始化:a:初始化的未赋值的值的情况 b:数组的上限。
字符数组的定义:A:注意字符串有两种表现方式:一是字符数组(又有两种情况,一是字符数组,二是数组指针),二是string类的使用。
B: 字符数组的结尾必须以‘0/‘结尾,自定义分别赋值的话,必须要自己给值,如果想要从中间截断必须直接令它为0。
多维数组:A:有一种给所有值为0的方法;
B.如果不给数组的数据的话,只能空第一个(想一下就知道为什么了)。
C.你猜猜多维数组是怎么存放在内存里面的...(是按顺序的啦,手动滑稽,对了给一个公式 N!+(N-1)!+··· 记住N是代表维度的)
数组的赋值(A:遍历;
B:用”strcpy[已经被淘汰,换为strcpy_s 新的函数,是在中间加长度的(记住字符串长度+1的)](str1,st2或” “){上式为函数语法}或者strncpy函数【加一个N)
数组的输出(遍历)对了,只有字符的数组名输出是直接输出数组内的元素
二。枚举类型:(枚举类型的处理的目的是为了将某些有范围的数给一个范围)
枚举类型的定义:enum weekday{ }依次往里输代表就好,记得数据的连接是需要依靠上一个数的。
枚举类型的赋值:day=mon/(weekday)0[后一个是因为weekday现在就相当于int一样]
三。结构类型 (结构类型是用来将不同类型的数据存放为一个整体,而且它和类不一样,比类低级一点,只能储存数据,我们可以看到对象化处理的影子,或许说,类就是在结构类型和函数的基础上诞生的,对象化的思路更有利于处理)
结构类型的定义
结构类型的初始化
结构类型的使用
结构数组的使用(新的技能,目测这个玩意可以定义相同类型的N多的东西)
讲一下这个玩意的语法吧
四。联合类型(可以用来省内存?炫技?{貌似乱入了什么东西}避免重用?)
这个玩意吧,貌似很有用处,不过目前没有体会到,完了在补好处
联合类型的定义 有一种调用叫做无名调用
联合类型的调用
联合类型的特点 :a:只能调用其中之一
b:成员的内存是最大的那一个
c:不能对联合变量名赋值和初始化,也不能做函数的参数和返回值
应用
A:字符串或者数组长度的总结
sizeof对数组的求法:记得是求所占的实际空间。而且还有一个数组退化为指针的注意点,记住有时候(逐个赋值,结尾不给0时不会)会+'\0';
对string字符串的求法:(从网上摘取)不同的字符所占的字节是不同的。
ASCII码:
一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值0,最大值255。如一个ASCII码就是一个字节。
UTF-8编码:
一个英文字符等于一个字节,一个中文(含繁体)等于三个字节。
Unicode编码:
一个英文等于两个字节,一个中文(含繁体)等于两个字节。
符号:
英文标点占一个字节,中文标点占两个字节。举例:英文句号“.”占1个字节的大小,中文句号“。”占2个字节的大小。
对结构类型的处理:结构类型的内存必须是4的整数倍,所以必须补4字节
对联合类型的处理:联合类型的最大值
对枚举类型的求法:按照int型的去算
strlen 求的是实际的长度,所以遇到0就会结尾,而且不算0;
str.length 可以求字符串的长度,不带0
B:冒泡排序(这个玩意可以用来排序的,是拥有好几个版本的经典之作,基本的原理是顺序交换,多次排序)
冒泡排序的基础版本
遍历所有的元素,实现每个元素之间的交换,这是内层,外层是多次调用内层,调用次数是N-1次
冒泡排序的更新版本
a:每次比较的范围可以缩小,每次减一
b:每次比较可以加一个判断,如果交换的次数为0,则停止循环。
C.大小写的搞定方法
1:可以用ascall码来搞定
2:可以用库函数 tolower,或者说是toupper来搞定
- C++的学习笔记(第四章:数组及自定义类型)
- C++primer学习笔记第四章-数组与指针
- C++Primer笔记3(第四章-数组和指针)
- 【C++ Primer】第四章学习笔记 (复合类型)
- JAVASE学习笔记:第四章 JAVA数组
- 第四章学习笔记 Tomcat服务器的安装及配置
- 090811c语言学习第五章笔记(类型变换,自定义函数,循环条件等)
- C学习笔记(三) 数据类型分类及类型转换
- C++Primer学习笔记第四章(4/18) 数组和指针
- <深入理解C指针>学习笔记和总结 第四章 指针和数组
- Objective-C学习笔记第四章继承
- 《C程序设计(第四版)》学习笔记
- C程序设计 第四版(谭浩强)-学习笔记-第四天
- 第四章:数组的定义及使用
- C++学习笔记(第四章 函数的应用及多文件组织 之二)
- C++学习笔记(第四章 函数的应用及多文件组织 之三)
- 学习笔记(2):C程序设计(第四版)谭浩强著_第三章~第四章
- C++Primer笔记 第四章 数组和指针
- web学习笔记25-Hibernate基本配置使用
- 菜鸟编程 引用
- BZOJ 4289: PA2012 Tax 最短路 建图
- ubuntu 16.04配置shadowsocks
- 特殊形式矩阵求逆
- C++的学习笔记(第四章:数组及自定义类型)
- 健壮性图
- Linux内核笔记 -- 锁
- 我从阿里面试回来,想和Java程序猿谈一谈
- poj3279 Fliptile
- Qt:引用外部库Plus
- 计算机与编程语言基础
- 2017-12-23php基础巩固学习第五天
- 数据结构实验之排序一:一趟快排