指针
1. 定义:指针是内存单元的地址
2. 指针变量定义:保存指针的变量,简称指针
3. 指针变量的定义
(1) 样式:[存储类型] 数据类型 *指针变量名[=初始值];
(2) 数据类型指该指针可以指向的数据类型
4. 通常用无符号长整型来表示内存单元的序号,即printf(“%1u”,地址);
5. *指针变量 表示这个地址所代表的值,如果进行修改,则这个地址所代表的值被修改,即原变量被修改
6. 指针变量 表示地址
7. 修改变量的两种方法:
(1) *指针变量名=1;
(2) 变量=1;
8. 指针运算
(1) 算数运算只限于++,--,-,+
例:指针变量++ 表示指针向前移动一个位置(地址值+它所占用字节数)
(2) 关系运算 指针==指针 只有所指向同一个变量返回值才为1
9. 指针与数组
(1) 数组中的元素内存中连续存放
(2) 数组名表示数组首地址,但无法算数运算,因为数组名所代表的地址不会改变
10. 字符指针
(1) 可以指向字符,字符数组,字符串
(2) 引用字符串中的字符的两种方式:*(字符指针+i)/ 字符指针 [i]
11. 指针数组
(1) 样式:[存储类型] 数据类型 *数组名[元素个数];
(2) 每一个元素都是指向数据类型的指针
12. 多维数组
(1) 定义int a[3][4];
① a隐式转化为数组的首行元素地址a[0],但一般用a[0][0]表示
② *a隐式转化为数组首元素地址即&a[0][0]
13. 指向多个元素的指针
(1) 样式:数据类型 (*指针变量名)[N];
(2) int a[3][4]; Int (*t)[4]=a;
⊙指向4个int类型元素的指针t+1表示下一行