C语言进阶3-指针第一部分

  1. 通常情况下,指针指的是指针变量,指针变量存放的是内存地址
    比如:
int a=3;  //a空间的地址加假设为0x40080050
int *p=&a; 

上面的a里面放了个3,*p里面放了a的地址0x40080050,即为指针变量p里面存放的地址指向了空间a.
在这里插入图片描述
在这里插入图片描述
注意上面两幅图片的区别,一个是打印出地址,一个是直接打印出a里面的内容。
2,当我们说到地址的时候,是指的是某个字节的地址,&a就是代表每第一个字节的地址。
深入理解

//在这里p中只放置了a的首地址,但是a又是int类型的,*p希望访问的有四个字节的空间
//所以p所指向a的第一个字节向后数三个字节空间
int *p=&a

3,对于指针,星号的个数表示这个指针变量的级数。
4.指针得使用步骤:先声明,后关联,再引用
5,指针有两种使用方法
第一种:在定义类型的时候,与前面的类型结合,用于表示被定义的指针变量的类型,的个数表示定义的指针变量的级数。
第二种:解引用。当解引用的时候,p表示p所指向的空间,这个时候的也称为取空间操作。注意这里的
p是一个整体,不能分开来看
6,取地址符号&的理解,取地址符号直接放在变量的前面,然后&和变量一起构成了一个新的符号,表示变量空间的额首地址,也就是首字节地址。

//注意:这里只是初始化指针,并不是解引用操作
int a;
int *p=&a;//此时的&a就表示取出的a的地址,*p指向的空间就是a的地址,

7.指针变量初始化和指针变量赋值的区别
指针变量赋值,比如:‘

int a = 7;
int *p=NULL;
p=&a;//注意这里的p并没有*,因为如果有了*的话,就表示a=&a,也就是把a的地址给了a,
//这样的话就错了
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值