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

【C语言初阶-const作用详解】const修饰变量、const修饰指针(图文详解版)

                               少年,做你认为对的事 

目录

                               少年,做你认为对的事 

1.const修饰变量 

2.const修饰指针(重要) 

代码1:

代码2:

 代码3:

​编辑 3.结论


1.const修饰变量 

const修饰变量将变量赋予了常量属性,不可修改

当我们有这样一个变量:

int n = 0;

我们要是想修改n的值,是不是有两种方式:

①n = 20;

②int * p = &n;

*p = 20;

但是,当我们的变量被const修饰时,我们就说这个变量具有了常量属性简称为常属性,那还能修改吗:就不能被修改了

 

如果我们用第二种方式:

 

我们发现可以修改但是,这种方法确实是非法的:

但是,我们创建这个const修饰的变量本身就是希望它的值不被改变, 为了弥补这种缺陷,我们就对指针也加上了const修饰:

接下来引入我们的const修饰指针。

2.const修饰指针(重要) 

代码1:

int main()
{int m = 10;int n = 20;//n = 20;const int* p = &m;printf("%d\n", *p);//*m = 20;//errorp = &n;printf("%d\n", *p);return 0;
}

 

 

结论1:当const放在如图所示位置修饰指针的时候,指针指向的地址空间里面的内容不可以修改,但是可以改变指针指向的地址空间 

代码2:

 

 

我们改变了const的位置,但是得出了一样的结论: 当const放在如图所示位置修饰指针的时候,指针指向的地址空间里面的内容不可以修改,但是可以改变指针指向的地址空间 。简单来说限制*p,不限制p

 代码3:

 结论3:当const放在如图所示位置修饰指针的时候,指针指向的地址空间里面的内容可以可以修改,但是不可以改变指针指向的地址空间 

 3.结论

①const 修饰变量,将变量赋予了常量的属性,不可被修改

②const放在指针变量*左边的时候,指针指向的地址空间里面的内容不可以修改,但是可以改变指针指向的地址空间 。简单来说限制*p,不限制p

③onst放在指针变量*右边的时候,指针指向的地址空间里面的内容可以可以修改,但是不可以改变指针指向的地址空间 ,简单来说不限制*p,限制p

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

相关文章:

  • 线程协作工具类【CountDownLatch倒数门闩、Semaphore信号量、CyclicBarrier循环栏栅、Condition接口】
  • Python 函数式编程进阶:map、filter、reduce
  • 大模型|基础_word2vec
  • 14.2 url后端过滤器(❤❤)
  • Leetcode 377 组合总和 Ⅳ
  • CleanMyMacX4.14.6如何清理mac垃圾内存
  • Java 学习和实践笔记(1)
  • 【自然语言处理-工具篇】spaCy<1>--介绍及安装指南
  • LeetCode树总结
  • AI专题:冬渐去、春将来,待看,AI 开花,数据挂果,可控链潮起
  • Netty源码系列 之 EventLoop run()方法 源码
  • ChatGPT 4.0 升级指南, ChatGPT Plus(GPT 4.0) 有何优势?
  • springboot157基于springboot的线上辅导班系统的开发与设计
  • 【机器学习】机器学习简单入门
  • 考研数据结构笔记(1)
  • 【深度学习理论】持续更新
  • npm ERR! reason: certificate has expired(淘宝镜像过期)
  • “极简壁纸“爬虫JS逆向·实战
  • Django通过Json配置文件分配多个定时任务
  • C++ 搜索二叉树的删除
  • 构建中国人自己的私人GPT—支持中文
  • elementui 回到顶部报错
  • go-carbon v2.3.8 发布,轻量级、语义化、对开发者友好的 golang 时间处理库
  • 【详解】斗地主随机发牌项目
  • 多账号运营为什么要使用动态住宅代理IP?
  • [C++] 如何使用Visual Studio 2022 + QT6创建桌面应用
  • Arduino 推出基于乐鑫 ESP32-S3 的 STEM 教育机器人
  • Blender使用Rigify和Game Rig Tool基础
  • 【Unity优化(一)】音频优化
  • 算法.1-三大排序算法-对数器-二分