单片机学习小组
登录
直播中
王军
7年用户
1789经验值
私信
关注
给C语言指针赋值有何作用
开启该帖子的消息推送
指针
变量
给C语言指针赋值有何作用?
给普通变量的赋值与给指针变量的赋值有何不同?
回帖
(1)
李建设
2022-2-25 14:41:01
指针变量的声明
一个指针声明后没有赋值,它的数据位是随机的:
unsigned char *p;
给一个指针变量赋值后,它的数据位是一个地址,指向别的变量的地址(这个变量可以是指针变量的地址可以是普通变量的地址):
声明一个普通变量: unsigned char a;
声明一个指针变量: unsigned char *p = &a;
(&是取地址符号,取普通变量a的地址赋给指针变量p)
给普通变量的赋值对比给指针变量的赋值
简单来说:普通变量储蓄的是数据,而指针变量储存的是地址
这是给一个unsigned char类型的变量赋值,赋一个1,数据以二进制储存:
unsigned char a = 1;
这是给一个unsigned char类型的指针变量赋值,存储的是一个普通变量的地址:
unsigned char *p = a;
代*的指针的使用说明
假如我定义一个指针变量:
unsigned char *p;
又定义两个普通变量:
unsigned char a = 1;
unsigned char b;
给指针变量赋值:
p = &a;
假如给b赋值:
b = *p;
所以b会等于1:(因为*的功能是把指针变量p指向的普通变量a的数据拿出来)
指针变量的声明
一个指针声明后没有赋值,它的数据位是随机的:
unsigned char *p;
给一个指针变量赋值后,它的数据位是一个地址,指向别的变量的地址(这个变量可以是指针变量的地址可以是普通变量的地址):
声明一个普通变量: unsigned char a;
声明一个指针变量: unsigned char *p = &a;
(&是取地址符号,取普通变量a的地址赋给指针变量p)
给普通变量的赋值对比给指针变量的赋值
简单来说:普通变量储蓄的是数据,而指针变量储存的是地址
这是给一个unsigned char类型的变量赋值,赋一个1,数据以二进制储存:
unsigned char a = 1;
这是给一个unsigned char类型的指针变量赋值,存储的是一个普通变量的地址:
unsigned char *p = a;
代*的指针的使用说明
假如我定义一个指针变量:
unsigned char *p;
又定义两个普通变量:
unsigned char a = 1;
unsigned char b;
给指针变量赋值:
p = &a;
假如给b赋值:
b = *p;
所以b会等于1:(因为*的功能是把指针变量p指向的普通变量a的数据拿出来)
举报
更多回帖
rotate(-90deg);
回复
相关问答
指针
变量
C
语言
中的
指针
是什么?如何规避野
指针
2022-02-25
1323
dd的值没有
赋值
给
指针
2019-04-03
1785
在keil中单片机
C
编程的
指针
与变量
有
何
关系
2021-10-19
1386
C
语言
中的
指针
与数组分别有哪些
作用
呢
2022-02-25
728
单片机
C
语言
指针
有
什么用处呢?
2023-10-23
347
C
语言
中如果没有二重
指针
行不行
2022-02-25
872
C
语言
模块化中的.
C
文件和.H文件
有
何
关系
2021-11-02
1400
C
语言
如何传递
指针
函数?
2020-12-18
791
什么是
C
语言
的
指针
变量
2020-12-15
1289
C
语言
的预处理指令
有
何
功能
2022-02-25
925
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分