上接http://bbs.itheima.com/thread-223129-1-1.html 和 http://bbs.itheima.com/thread-223130-1-1.html
十、转义字符 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); } } |