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

C语言之const

目录

前言

一、定义

二、标准的指针使用模型

三、如何杜绝间接访问的修改能力

1.常量指针

2.指针常量

3.两者皆不可改

总结


前言

        在C语言中,关键字const用于声明一个常量。常量在程序执行过程中其值不会被改变,这在编程中非常有用,可以提高代码的可读性和可维护性。通过使用const关键字,我们可以明确表示某些值是不可变的,同时编译器也可以在一定程度上优化代码。


一、定义

若a是局部变量,a的数据不可变,但是通过指针可以改变。

int main ()
{
	//局部常量
	const int a = 8848;
	int* p = &a;
	*p = 8;
}

 

 若a是全局变量,a的数据不可变。

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

二、标准的指针使用模型

可利用指针改变指向和内容

//标准的指针使用模型
int a = 3, b = 4;
int* p = &a;
*p = 6;
p = &b;
*p = 8;

三、如何杜绝间接访问的修改能力

1.常量指针

——指向可改 内容不可改——

	int a = 3, b = 4;
	const int* p = &a;
	*p = 6;
	p = &b;
	*p = 8;

 

2.指针常量

    ——内容可改 指向不可改——

    int a = 3, b = 4;
     int* const p = &a;
    *p = 6;
    p = &b;
    *p = 8;

 

3.两者皆不可改

——内容不可改 指向不可改——

int a = 3, b = 4;
const int* const p = &a;
*p = 6;
p = &b;
*p = 8;


总结

        总的来说,const关键字在C语言中用于声明常量,提高代码的可读性和可维护性,并确保程序中的一些数值不会被修改。

http://www.dtcms.com/a/30279.html

相关文章:

  • Springboot 高频面试题
  • 常见千兆光电收发器型号(PON无源光收发光功率范围)
  • Affinity Photo for Mac v2.6.0专业级修图软件 支持M、Intel芯片
  • 【雅思博客06】Daily Life
  • 【Qt】数据库编程(SQLite API)
  • nasm - BasicWindowExt_32
  • 当电脑上有几个python版本Vscode选择特定版本python
  • C++ 标准库——函数对象和函数适配器
  • linux文件管理命令ln
  • 算法菜鸡备战3月2日传智杯省赛----0221
  • 大数据组件(四)快速入门实时数据湖存储系统Apache Paimon(3)
  • 《代码随想录第三十九天》——背包问题二维、背包问题一维、分割等和子集
  • 【进程与线程】Linux 线程、同步以及互斥
  • 学习整理安装php的uuid扩展以及uuid调用方法
  • vue2.x中父组件通过props向子组件传递数据详细解读
  • logstash中的input插件(http插件,graphite插件)
  • python杂学
  • 视觉应用工程师(面试)
  • OpenBMC:BmcWeb实例化App
  • 非常简洁的一个 Excel 导出封装,生成多个 Excel 文件并打包成 zip 通过浏览器下载
  • python小项目编程-中级(1、图像处理)
  • 【蓝桥杯集训·每日一题2025】 AcWing 6118. 蛋糕游戏 python
  • 欧洲跨境组网专线:企业出海的高效网络解决方案
  • Python(二十二)实现各大跨境船公司物流查询CMA船司物流查询
  • DeepSeek技术演进史:从MoE到当前架构
  • npm/pnpm软链接
  • Spring中Aware的用法以及实现
  • hive—常用的函数整理
  • AI学习指南DeepSeek篇(6)-DeepSeek论文介绍
  • 目标检测中单阶段检测模型与双阶段检测模型详细对比与说明