详解C指针

简介: 对于C语言开发来说内存的管理显得很重要,尤其是对于初学者刚学指针会感到头疼,学了很久也不知道指针到底是个什么东西,本文将简单介绍指针相关的内容。

1.指针的定义:

所谓指针就是一个变量的地址,指针本身也是一个变量,指针的值就是变量的地址,所以对于一个一级指针的地址就是一个二级指针。



2.指针的两大要素

(1)起始地址:指针的值

(2)步长:指针的类型

对于一个一级指针来说步长为一个列指针,二级指针步长为一个行指针,三级指针步长为一个面指针,每升一级(取一次地址)加一维,降一级(借一下引用)降一维。



3.指针的运算

(1)对于指针来说:自增与自减的单位都是指针的步长,比如对一个二级指针来说,++一次会到下一行的相同列。

(2)指针的大小与类型无关,与操作系统位数有关。

对于32bits操作系统:

sizeof 指针 = 4bytes

对于64bits操作系统:

sizeof 指针= 8bytes

对于数组名(数组名可以理解为一种特殊的指针,我们后面会介绍):

sizeof 数组名 = 数组的大小



4.指针的应用

(1)传参过程中我们传指针能提高传参效率

(2)传参过程中传指针可以间接改实参的值



5.一些练习题

image.png

image.png


相关文章
|
7月前
|
C语言 C++
深入理解指针
深入理解指针
71 2
|
7月前
|
存储 C++
C/C++指针从0到99(详解)
C/C++指针从0到99(详解)
指针的部分应用
指针的部分应用
50 0
|
存储 Java C语言
指针
一、指针 指针是C语言中的一种特殊数据类型,用于存储变量的内存地址。指针变量可以指向任何数据类型的变量,包括基本数据类型(如整数、浮点数)和复合数据类型(如数组、结构体)。 指针的主要作用是通过引用变量的内存地址来访问和修改变量的值。通过指针,可以直接操作变量所在的内存空间,而不需要通过变量名来访问。这使得指针在一些特定的情况下非常有用,例如动态内存分配、函数参数传递和数据结构的实现。 指针的定义和使用包括以下几个方面: 1. 指针变量的声明:指针变量的声明需要指定指针所指向的数据类型。例如,int *p; 声明了一个指向整数类型的指针变量p。 2. 取地址运算符:取地址运算符&用于获取变量的
43 0
|
2月前
指针初步讲解(上)
指针初步讲解(上)
38 1
|
4月前
|
存储 C++
一篇文章带你深入了解“指针”(下)
一篇文章带你深入了解“指针”(下)
|
6月前
|
存储 编译器 C++
C++中的指针
C++中的指针
35 1
|
7月前
|
存储 程序员 C++
c++指针
c++指针
38 1
|
7月前
|
存储 C语言
深入理解指针(1)
深入理解指针(1)
46 2
|
7月前
|
人工智能
## 对指针的理解
## 对指针的理解
27 0