初识C语言中的指针

您所在的位置:网站首页 c语言中的指针类型 初识C语言中的指针

初识C语言中的指针

2023-06-13 06:51| 来源: 网络整理| 查看: 265

指针是个变量,其变量中存放的是地址(存放在指针中的值都被当成地址处理)

指针的大小在32位平台上是4个字节,在64位平台上是8个字节

指针和指针类型

指针类型决定了指针进行解引用操作的时候,能够访问空间的大小

 int*p         能够访问8个字节

 char*p      能够访问1个字节

 double*p     能够访问8个字节

指针+-整数

指针类型决定了指针走一步走多远(指针的步长)

 int*p              走4个字节

 char*p           走1个字节

 double*p      走8个字节

野指针

概念 :野指针就是指针指向的位置是不可知的(随机的,不正确的,没有明确限制的   )

野指针的产生 :

1.局部变量不初始化,默认是随机值,局部的指针变量就被初始化为随机值;

2.指针越界访问;

3.指针指向的空间释放;

如何避免野指针 :

指针初始化         如 :(  int*p=NULL )小心指针越界指针指向的空间释放时,把指针指向空指针使用指针之前,检测指针的有效性

指针—指针,得到的是两个指针之间的个数   (两个指针要在同一个空间内)

指针和数组

 arr---数组名  是首元素的地址 (绝大部分情况下)

例外:

&arr--- &数组名    ----取出的是整个数组的地址

 sizeof(arr)---sizeof(数组名)----数组名表示的是整个数组----sizeof(数组名)计算的是整个数组的大小

 

 

二级指针

 int a=10;              一级指针变量

 int* pa=&a;    一级指针类型

 int**ppa=&pa;      ppa  --就是二级指针

 

指针数组---本质是数组----存放指针的数组 数组指针---本质是指针

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3