当前位置: 首页 > news >正文

C语言的const函数修饰指针

文章目录

  • 一、const函数的作用

int a = 10;
int *p ;
p = &a;

从上面的代码分析,p 存放的就是a的地址, *p 存放的就是 a 的值。

一、const函数的作用

一旦使用了const函数修饰一个变量,那么这个变量就无法变化了。
所以下面三种情况:

const int *p;
int const *p;
int * const p;

const int *p 和 int const *p 是一样的,所以这里只分析 int const *p; 和 int * const p;

const *p 修饰的是 * p,而 * p存放的是对应地址的值,所以这里我们不能修改对应地址的值,但是可以修改p的地址。

#include <stdio.h>
int main()
{int a = 10;int b = 10;int const*p = &a;*p = b; // 这里会报错
}

在这里插入图片描述

告诉你*p是不可以被修改的。
*p存放的是变量的值, 所以这个时候变量的值是不能被改变的。

#include <stdio.h>
int main()
{int a = 10;int b = 10;int * const p = &a;*p = b;p = &b;
}

更换写法过后,这个错误就不存在了。但是这个时候回告诉你 p 是一个不可修改的值。 p存放的是一个地址,这个时候地址不能被修改的,

在这里插入图片描述

http://www.lryc.cn/news/206883.html

相关文章:

  • EasyExcel使用方式(包含导出图片)
  • redis学习(三)——java整合redis
  • OpenText 安全取证软件——降低成本和风险的同时,简化电子取证流程
  • 【vue】vue前端、生产(线上)环境请求unicloud云服务空间axios报错
  • JVM详解(InsCode AI 创作助手)
  • 华为c语言编程规范
  • SQL Server Management Studio (SSMS)的安装教程
  • React 图片瀑布流
  • C++数据结构X篇_21_插入排序(稳定的排序)
  • 【Unity】3D跑酷游戏
  • bp前端验证码绕过及token绕过
  • Jmeter(十四):跨线程组传递jmeter变量及cookie的处理详解
  • css实现圆形进度条
  • 适用于 Windows 10 和 Windows 11 设备的笔记本电脑管理软件
  • YOLOv5论文作图教程(1)— 软件介绍及下载安装(包括软件包+下载安装详细步骤)
  • AutoCAD 2024 Mac中文附激活补丁 兼容M1.M2电脑
  • Jmeter基础---while控制器举例说明
  • 正点原子嵌入式linux驱动开发——RGB转HDMI
  • 前端时间分片渲染
  • 亿图导出word和PDF中清晰度保留方法
  • chatGPT结构及商业级相似模型应用调研
  • HarmonyOS鸿蒙原生应用开发设计- 华为分享图标
  • Java基础-反射
  • 计算机毕设 大数据二手房数据爬取与分析可视化 -python 数据分析 可视化
  • 【转载】 Bytedance火山引擎智能拥塞控制算法 VICC
  • Postman如何测试WebService接口
  • 微服务-Eureka
  • 超声电机工作原理
  • 基于人工蜂鸟优化的BP神经网络(分类应用) - 附代码
  • 两个list中存放相同的对象,一个是页面导入,一个是从数据库查询,外部传入一个集合存放的是对象的属性名称,根据属性名称处理两个list