指针3复习
来源:互联网 发布:怎么训练狗狗坐下 知乎 编辑:程序博客网 时间:2024/06/05 20:42
数组的指针?(指向数组元素的指针)
一维数组的指针:int arr[5]={0}; int *p; p=arr; p++ (每个元素的地址)*p元素的值
二维数组的指针: int arr[3][5]; int *p2; p2++ (指向行的首地址), 指针的方式表示a[i]=(a+i)
二维数组使用指针取值*(a2[i]+j)==*(*(p2+i)+j)
指向数组的指针:
又叫行指针,用来指向某一个数组,它的作用主要体现在二维数组
定义行指针:int arr[5]={0}; int (*p)[5]; p=arr; p=&arr; ‘5’表示要指向数组的指针
对于一位数组: p+1 跑到数组最后一个元素的下一个元素,怎么取值? *(p)[i]
对于二维数组: p+1 跑到下一行 *(*(p+i)+j)
指针数组:
数组的每一个元素都是一个指针变量
char *arr[3]={"Hello world!","kity","cndn"};
crr[0]----->hello world!
crr[1]----->kity
crr[2]----->csdn
char arr[3][13]
好处:节省空间
指针的指针?
指向指针变量的指针变量,称为:指针的指针
int i=5; int *p=&i; int **p2=&p;
获取值:*p2==p的地址
**p2==i的值
**p2==*p;
指向函数的指针?
函数名是有入口地址的,能不能通过定义某一个指针,去指向一个函数呢?
可需要使用到指针函数的指针:
int (*p)(); //定义了一个指向函数指针变量p
p=max; //max是一个函数名
(*p)(a,b); //使用指针函数的指针调用指针函数
返回值是指针的函数?
相当于返回值是一个地址
int *max(int a,int b)
////////////////////////////////////////////
结构体的概念:
存储一个可变的数据,使用变量处理
存储同一类型的批量,使用数组
不同类型的数据集合,使用结构体
//结构体的定义
struct 结构体名{
成员变量
}
成员变量定义形式: (类型名 变量 int a;)
//定义结构体类型的变量
struct 结构体类型名 变量名;
//初始化结构体变量的方法
1) 定义的同时初始化
struct 结构体名 {
}a,b={...赋值列表...};
2)使用结构体变量初始化
b.XXX=XXX;
a.XXX=XXX;
3)定义结构体变量时初始化
struct 结构体名 stu={...赋值列表...}
//结构体的引用方法
使用结构体变量 结构体变量名 如 stuid
////////////////////////////////////////////////////
一维数组的指针:int arr[5]={0}; int *p; p=arr; p++ (每个元素的地址)*p元素的值
二维数组的指针: int arr[3][5]; int *p2; p2++ (指向行的首地址), 指针的方式表示a[i]=(a+i)
二维数组使用指针取值*(a2[i]+j)==*(*(p2+i)+j)
指向数组的指针:
又叫行指针,用来指向某一个数组,它的作用主要体现在二维数组
定义行指针:int arr[5]={0}; int (*p)[5]; p=arr; p=&arr; ‘5’表示要指向数组的指针
对于一位数组: p+1 跑到数组最后一个元素的下一个元素,怎么取值? *(p)[i]
对于二维数组: p+1 跑到下一行 *(*(p+i)+j)
指针数组:
数组的每一个元素都是一个指针变量
char *arr[3]={"Hello world!","kity","cndn"};
crr[0]----->hello world!
crr[1]----->kity
crr[2]----->csdn
char arr[3][13]
好处:节省空间
指针的指针?
指向指针变量的指针变量,称为:指针的指针
int i=5; int *p=&i; int **p2=&p;
获取值:*p2==p的地址
**p2==i的值
**p2==*p;
指向函数的指针?
函数名是有入口地址的,能不能通过定义某一个指针,去指向一个函数呢?
可需要使用到指针函数的指针:
int (*p)(); //定义了一个指向函数指针变量p
p=max; //max是一个函数名
(*p)(a,b); //使用指针函数的指针调用指针函数
返回值是指针的函数?
相当于返回值是一个地址
int *max(int a,int b)
////////////////////////////////////////////
结构体的概念:
存储一个可变的数据,使用变量处理
存储同一类型的批量,使用数组
不同类型的数据集合,使用结构体
//结构体的定义
struct 结构体名{
成员变量
}
成员变量定义形式: (类型名 变量 int a;)
//定义结构体类型的变量
struct 结构体类型名 变量名;
//初始化结构体变量的方法
1) 定义的同时初始化
struct 结构体名 {
}a,b={...赋值列表...};
2)使用结构体变量初始化
b.XXX=XXX;
a.XXX=XXX;
3)定义结构体变量时初始化
struct 结构体名 stu={...赋值列表...}
//结构体的引用方法
使用结构体变量 结构体变量名 如 stuid
////////////////////////////////////////////////////
- 指针3复习
- 指针的复习(3)
- 指针复习
- 指针复习
- C#指针复习示例
- 复习下const指针
- 复习一下C指针
- C++ 函数指针复习
- [复习C语言]指针
- C语言复习-指针
- C指针复习有感
- 指针的复习
- 复习指针变量
- C指针基础复习
- C语言指针复习
- 关于指针的复习
- 复习c语言:指针
- C三级指针复习
- 内存泄露、野指针
- Linux常用命令大全1
- 刷Android模拟器下载的system.img和userdata.img到C8650
- OpenRisc-19-or1200下linux的i2c(一)
- 开学一个月有感~~o(>_<)o ~~
- 指针3复习
- ##做为宏定义的参数的作用
- 小技巧:去掉iframe多余的空白和滚动条
- 浅谈gibbs sampling(LDA实验)
- 先按时间排序,再按姓名排序 sql语句
- Mysql字符集设置
- LCD驱动分析
- 已经添加了服务引用,不知道怎么传用户名密码,不传的话报验证信息错误
- 关于wpa_supplicant.conf