【养成记】嵌入式挑战第6天,第二周第三讲-数组指针和二维数组及const关键字
课程章节:
物联网/嵌入式工程师 第二周第三讲 1-14 数组指针和二维数组、1-16 const关键字
课程内容:
对数组指针和二维数组及const关键字做了介绍
学习笔记:
1. 数组指针和二维数组
1.1 讲解
int a[3][4];
int (*p)[4];
p = a;
公式
a[i][j] <=> *(a[i] + j) <=>*(*(a + i) + j)
p[i][j] <=> *(p[i] + j) <=>*(*(p + i) + j)
注意:
a是一个数组名,它标识数组的首地址,它是一个符号常量,不能修改
p是一个指针变量,它保存了二维数组的首地址,它是一个变量,可以修改
1.2 代码示例
2. const关键字
2.1 含义
const是constant的缩写,意思是"恒定不变的量"。在C语言中const来修饰变量,表示这个变量是不可以被修改的,拥有只读属性。通过const操作的变量,其值不能通过赋值或者递增,递减来修改,所以要一开始初始化变量;
2.2 基本用法
2.2.1 修饰普通变量
数据类型 const 变量名 = 值;
或
const 数据类型 变量名 = 值;
2.2.2 修饰指针变量
const除了修饰变量外,还可以修饰指。修饰指针有以下几种用法:
int const *p; //指针p本身的值可以改,但是p所指向的内容不能改.(*p不能改)
const int *p; //指针p本身的值可以改,但是p所指向的内容不能改.(*p不能改)
int *const p; //指针p本身的值不能改,但是p所指向的内容可以改.(p不能改)
int const * const p; //指针p本身的值不能改,并且p所指向的内容不能改.(p和p都不能改)
const int * const p; //指针p本身的值不能改,并且p所指向的内容不能改.(p和p都不能改)
2.2.3 代码示例
课程评价:
对数组指针和const有了更深的了解
- 数组指针是指针,指针数组是数组
- const 修饰谁,谁不可以修改,而且它还存在就近原则,仅对其后紧跟的变量生效
点击查看更多内容
1人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦