指针和数组
指针和数组
-
指针和一维数组
1.1>一维数组名
一维数组名是一个指针常量,它存放的是一维数组的第一个元素的地址
1.2>下标和指针的关系
如果p是一个指针变量,则p[i] 永远等价于 *(p+i)
确定一个一维数组需要几个参数:
如果一个函数要处理一个一维数组,则需要接受该数组的哪些信息 (1)数组的首地址 (2)数组的长度
/*
2020年6月13日18:58:38
一定要明白第10行的pArr[3] 和17行 19行的a[3] 是同一个变量
*/
1.3>指针变量的运算
指针变量不能相加 不能相乘 也不能相除
如果两个指针变量指向的是同一块连续空间中的不同存储单元,则这两个指针才可以相减
1.4>一个指针变量到底占几个字节【非重点】
预备知识:
sizeof(数据类型)
功能:返回值就是该数据类型所占的字节数
例子:sizeof(int)=4 sizeof(char)= 1; sizeof(double) = 8;
假设p指向char类型变量
假设q指向int类型变量
假设r指向double类型变量
p q r 本身所占的字节是否一样?
答案: p q r 本身所占的字节是一样的,都是4个字节
总结:一个指针变量无论他指向的变量占几个字节,该指针变量本身只占四个字节
一个变量的地址是用该变量的首地址来表示
-
指针和二维数组