什么是地址?

 内存单元的编号

从0开始的非负整数

什么是指针?

指针就是地址,地址就是指针

指针是内存地址,指针变量是用来存放内存地址的变量.

指针和指针变量是两个不同的概念,但是通常我们叙述时会把指针变量简称为指针

指针的本质就是一个操作受限的非负整数

如何使用指针?

1.定义一个指针变量    2.把变量地址赋值给指针  3.访问指针变量中可用地址的值

int *p;什么意思?

  p是变量的名字,int *表示p变量存放的是int类型变量的地址

 int*p;不表示定义了一个名字叫做*p的变量

int*p;应该这样理解:p是变量名,p变量的数据类型是int *类型

                                     所谓int *类型,实际就是存放int变量地址的类型

p = &i;什么意思?

1.p保存了 i 的地址,因此p指向 i

2.p不是 i ,i 也不是p,更准确地说,修改p的值不影响 i 的值

3.如果一个指针变量指向了某个普通变量,则 *指针变量  就完全等同于  普通变量

   例子:

       如果p是个指针变量,并且p存放了普通变量i的地址,则p指向了普通变量i

      *p 就完全等同于 i

      或者说:在所有出现*p的地方都可以替换成 i

                    在所有出现 i 的地方都可以替换成*p

指针的分类

1.基本类型指针

2.指针和数组

  指针和一维数组:

        数组名:

               一维数组名是个指针常量

                它存放的是一维数组第一个元素的地址

                 它的值不能被改变

                 一维数组名指向的是数组的第一个元素

         下标和指针的关系

              a【i】<<==>> *(a+i)

     假设指针变量的名字为p

则p+i的值是p+i*(p所指向的变量所占的字节数)

指针变量的运算,

指针变量不能相加,不能相乘,不能相除

如果两指针变量属于同一数组,则可以相减

指针变量可以加减一整数,前提是最终结果不能超过指针

p+i的值是p+i*(p所指向的变量所占的字节数)

p-i的值是p-i*(p所指向的变量所占的字节数)

p++ <==> p+1

3.指针和函数

4.指针和结构体

5.多级指针

posted on   啊慧慧慧  阅读(85)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10亿数据,如何做迁移?
· 推荐几款开源且免费的 .NET MAUI 组件库
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· c# 半导体/led行业 晶圆片WaferMap实现 map图实现入门篇
· 易语言 —— 开山篇



点击右上角即可分享
微信分享提示