十、转义字符
1、转义字符是什么?
是用来改变字符原有的含义,如\0打印出来是一个空字符,而不是字符'0'。
2、转义字符有什么用?
用来表示常见的那些不能显示ASCII字符,如换行,引号等
3、转义字符怎么用?
4、补充
转义字符的核心是:“\”,任何字符前面加“\”都会被转义。
十一、数组
1、数组是什么?
是用来存储一组数据的容器。
2、数组有什么用?
用于把同一类型的一组数组统一管理起来。
3、数组怎么用?
定义:数据类型 数组名[长度{数量}]; 初始化:类型 数组名[(长度)] = {元素1,元素2,...};
赋值:数组名[角标{索引}] = 值; 使用:数组名[角标]; 如:int a = arr[0];
4、数组什么时候用?
当需要管理一组有关联的数据时
5、数组有什么特点?
1)数组必须要定义长度(正整数),定义时可初始化(长度必须是常量)或之后单独初始化。
2)数组是有序的,每个数组都有角标,从0开始分配,角标不能>=数组长度;类型一致。
3)数组由地址(数组名),里面的元素也有地址,数组当参数时(长度可省)传递的时地址。
4)数组当参数传递时是指针类型,所以如果需要用数组长度要额外传递。
6、补充
1)初始化的方式
(1)初始化第一种方式:类型 数组名[(长度)] = {元素1,元素2,...}
(2)初始化第二种方式:单独初始化
类型 数组名[(长度)]
数组名[角标0] = 值
数组名[角标1] = 值
数组名[角标2] = 值
......
(3)初始化第三种方式:省略长度
类型 数组名[] = {元素1,元素2,...}
2)定义时可初始化(长度必须是常量)或之后单独初始化
3)如果省略长度,那么表示,后面初始化几个元素,长度就为几
4)数组角标 = 数组长度 - 1
5)当没有定义数组时赋值,不能省略长度
6)int类型数组可以给double值(类型不一致),但是会提示警告,丢失精度
7)数组第一个元素的地址值就是这个数组的地址值,二者是一致的
8)数组的地址和指针的地址,值相同,但是跨度不一样(意义不一样)
9)数组当参数传递时是地址传递(类似指针),不能改变数组的长度
10)sizeof计算的字节数只跟变量的类型有关.
11)数组占据的字节==数组的类型 * 数组的长度
数组在当参数传递的时候是把第一个元素的地址传递过去,
数组的第一个元素的地址就是这个数组的地址。,二者是一致的。
12)在64位环境下,所有的指针都是8个字节
13)计算一个数组的长度
int main() {
int arr[] = {};
//计算数组的长度
int size = sizeof(arr) / sizeof(int)
printf("数组的长度是:%d",size);
//遍历数组每一个元素
for (int i = 0; i < size; i++) {
printf("第[%d]个元素是=%d\n",i,arr);
}
}
| 欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |