前言
C语言基础笔记之四,指针
.
内容
【1】指针概述
1--- 指针变量
用于存放地址量的变量
2--- 指针
指针变量、地址常量通称为指针
3--- *
1--- 定义
2--- 指针解引用:通过地址获取其内容
4--- 指针加减:加减的是单位长度
单位长度:指针所指向的数据所占有的字节大小
【2】数组
a[i] <===> *(a+i)
*(p+i) <===> p[i]
[]:指针加上单位长度后,取*运算
a:地址常量
p:指针变量
【3】atoi
功能:将数值形式的字符串转换成整形数据
头文:<stdlib.h>
参数:char *
返值:int
特点:遇到非数值形式的数据停止转换
【4】二维数组
int a[3][4]
1--- a:行地址,加一移动一行
a[0]:列地址,加一移动一列
2---
a[i][j] <===> *(a[i]+j) <===> *(*(a+i)+j)
【5】sizeof
指针占四字节空间,与存储类型的数据没有关系
【6】指针数组
int *p[3];
1--- 本质:数组,元素是指针类型
2--- 三个元素:p[0]、p[1]、p[2]
【7】数组指针
int a[4][3];
int (*p)[3];
1-- p[i][j] <===> *(p[i]+j) <===> *(*(p+i)+j)
a[i][j] <===> *(a[i]+j) <===> *(*(a+i)+j)
2-- p:指针变量,a:地址常量
【8】&与*
互为逆运算
【9】二级指针
用于存放一级指针的地址
int a = 10;
int *p = &a;
int **q = &p;
【10】const
const int * p;
常量化*p;
int * const p;
常量化p;
【11】void *
泛型指针
【12】NULL
int *p = NULL;
防止野指针的形成
版权声明:本文为博主原创文章,转载请注明出处KidSea