c指针
来源:互联网 发布:电子期刊在线阅读软件 编辑:程序博客网 时间:2024/06/16 07:01
万事开头难,博客已经开通了小半年了,一直心心念念想来写自己的博客,由于自己喜欢的是嵌入式,而嵌入式的基本语言是c语言,所谓欲利其工,必善其器,c最主要的核心就是指针了,好比单片机与中断的关系,下面说一下自己学习与师者教授的一点拙见。
(1)指针数组与数组指针
int *p[5];
int (*p)[5];
对于int a[5],我们很容易知道这表示a数组中的元素是int类型,同样的道理int p[5]等效于(int )p[5],(int *)修饰p里的元素,所以int *p[5]为指针数组,而int(*p)[5]为数组指针。
学会了区分后,我们学一下他们的使用;
数组指针:
例:int a[5]={1,2,3,4,5};
int (*p)[5]=&a;
在上面的例子中a数组用指针如何表示呢?
我们要知道&a表示整个数组的首地址,而p是数组指针,就一个指针,储存了a数组;此时p是a数组的首地址,**p是a数组的首地址的首元素,则a[3]=((*p)+2);
如果换成二维数组呢?
如果我这样赋值呢?
例:int a[2][3]={{1,2,3}{4,5,6}};
int (*p)[5]=a;
此时的a是数组的首元素的首地址,则p是a[0],(p+1)是a[1],而a[0] 是数组a的第一行的首地址,所以a[1][1]=*((*p+1)+1)。
指针数组:
例:int a[2][3]={{1,2,3},{4,5,6}};
int *p[2]={a,a+1};
此时的p是数组a第一行的首地址,(p+1)是数组a第二行的首地址,则a[1][1]=*((p+1)+1)。
- C指针的指针
- c 指针的指针
- C--指针
- C-指针
- C指针
- C指针
- C指针
- C---指针
- c 指针
- C指针
- C指针
- C指针
- C 指针
- c指针
- C指针
- C 指针
- C 指针
- C 指针
- 解决ElementUI的Table组件固定列,在屏幕刚好够表格显示时,会出现固定列显示不全的问题
- 安迪-比尔定理已被打破?
- Unparseable date: "2017-11-01"异常解决
- lua学习(三)关系运算符
- zookeeper搭建
- c指针
- 服务器搭建solr
- 用python中的列表和字典实现名片管理系统
- Studio运行出现:This version of Android Studio is incompatible with the Gradle Plugin used. Try disablin
- list<>集合通过io深度克隆
- xpath定位
- 近期deep learning做图像质量评价(image quality assessment)的论文3
- 使用可变参数,实现函数,求函数参数的平均值和最大值
- super关键字的应用