(1数组名的理解1.数组名是数组首元素的地址2.数组名是整个数组的地址1跳过整个数组3.sizeof数组名2使用指针访问数组数组名arr是数组首元素的地址可以赋值给p,其实数组名arr和p在这里是等价的我们可以使用arr[i]访问数组的元素那p[i]也可以访问数组元素3一维数组传参的本质数组名是数组首元素的地址那么在数组传参的时候传递的时候传递的是数组名也就是说本质上数组传参传递的是数组首元素的地址4冒泡排序注意事项1.外层循环for(i0;isz-1;i)n个元素最多只需要sz-1趟排好sz-个元素最后一个元素自然有序2.内层循环for(j0;jsz-i-1;j)高频考点每趟i结束尾部i个元素已经排好序不用重复比较3.flag优化标记int flag1;//每一趟外层循环开始flag重置为1假设本趟有序只要本趟发生任意一次交换立刻设置flag0,代表数组无序break作用跳出外层冒泡循环结束整个排序5二级指针指针变量也是变量是变量就有地址指针变量存放在哪里这就是二级指针如图ppa里存的是pa的地址对于二级指针的运算*ppa通过对ppa中的地址进行解引用找到的是pa,*ppa其实访问的就是pa;*pa通过对pa中的地址进行解引用找到的是a,*pa其实访问的就是a(6)指针数组整形数组存放整型的数组字符数组存放字符的数组指针数组存放指针的数组存放地址的数组指针数组的每个元素是地址又可以指向一块区域指针数组模拟二维数组parr[i]访问的是parr数组的元素parr[i]找到的数组元素指向了整形一维数组parr[i][j]就是整型一维数组的元素