C语言中的指针和结构体ppt课件
指针是C语言中的一种基本数据类型,它是一种特殊的变量,用于存储其他变量的地址。指针变量的类型和它所指向的变量的类型相同。
1. 指针的概念
在C语言中,指针是一种变量,它存储了其他变量的地址。例如,int \*p; 这里,p是一个整型指针,它可以存储整型变量的地址。
2. 指针变量的定义
指针变量的定义格式为:类型名 \* 指针变量名;例如,int \*p; 这里,p是一个整型指针。
3. 取地址运算符(&)和间接访问运算符(\*)
取地址运算符(&)用于获取变量的地址,而间接访问运算符(\*)用于访问指针所指向的变量。
例如,int x = 3; int \*p; p = &x; 这里,p存储了x的地址,然后可以通过\*p来访问x的值。
4. 指针变量的类型和它所指向变量的类型相同
例如,int \*p; p = &x; 这里,p是一个整型指针,它存储了x的地址,而x是一个整型变量。
5. 赋值运算
指针变量可以赋值给其他指针变量,例如,int \*p1, \*p2; p1 = &a; p2 = p1; 这里,p2也指向a。
6.注意:指针变量必须初始化
例如,void main() { int a = 1, b = 2, \*p1, \*p2, \*pt; p1 = &a; p2 = &b; ... }
7. 指针作为函数参数
指针可以作为函数参数,用于改变主调函数中某个变量的值。例如,void swap(int \*px, int \*py) { int t; t = \*px; \*px = \*py; \*py = t; }
8. 数组和地址之间的关系
数组名代表一个地址,它的值是数组首元素的地址(基地址)。例如,int a[100]; a+i 是距数组a的基地址的第i个偏移。
9. 任何由数组下标来实现的操作都能用指针来完成
例如,int a[100], \*p; p = a; 或 p = &a[0]; p+i 等价于 a[i]。
2025-03-28 08:30:00
289KB
1