C语言——const

devtools/2024/9/24 7:15:40/

1、函数中形式参数是否采用const取决于是否要修改原始数组的值。

例子如下:

int sum(const int ar[], int n)

const并非要求原始数组要是常量,而是让该函数将传进来的原始数组当成常量不做任何修改。当函数中对原始数组进行修改时,就会报错。

若是希望通过该函数对原始数组进行修改,就不需要加const。如下:

int sum(int ar[], int n)

此外,int sum(int ar[], int n)与void sum(int ar[], int n)区别在于,是否有采用return机制,即是否有返回值。

2、const数组、const指针、指向const的指针

(1)const数组:const int days[12] 

#define months 12const int days[months] = {31,28,31,30,31,30,31,31,30,31,30,31};

(2)const指针:const double *pt

double rates[3] = {10,12.2,14.5};const double locked[3] = {11.0, 12.2, 13.3};const double *pt = rates;*pt = 5;    //不允许pt = &rates[2];    //不允许pt = locked;    //不允许rates[0] = 5;

(3)指向const的指针:double * const pt

double rates[3] = {10,12.2,14.5};double * const pt = rates;pt = &rates[2];    //不允许*pt = 5;

最后,const指针与指向const的指针可以结合使用,表示该指针既不能修改其指向的地址,也不能修改其指向地址上的值。

const double * const pt;

http://www.ppmy.cn/devtools/8711.html

相关文章

adb工具使用

作者简介: 一个平凡而乐于分享的小比特,中南民族大学通信工程专业研究生在读,研究方向无线联邦学习 擅长领域:驱动开发,嵌入式软件开发,BSP开发 作者主页:一个平凡而乐于分享的小比特的个人主页…

基于51单片机电子钟闹钟12/24小时制LCD显示( proteus仿真+程序+设计报告+讲解视频)

基于51单片机电子钟闹钟12/24小时制LCD显示 1. 主要功能:2. 讲解视频:3. 仿真设计4. 程序代码5. 设计报告6. 设计资料内容清单&&下载链接 基于51单片机电子钟闹钟12/24小时制LCD显示( proteus仿真程序设计报告讲解视频) 仿真图proteu…

实测52.4MB/s!全志T3+FPGA的CSI通信案例分享!

CSI总线介绍与优势 CSI(CMOS sensor parallel interfaces)总线是一种用于连接图像传感器和处理器的并行通信接口,应用于工业自动化、能源电力、智慧医疗等领域,CSI总线接口示意图如下所示(以全志科技T3处理器的CSI0为…

Yolo-world使用

1、安装 python pip install ultralytics 前往官网下载模型:https://docs.ultralytics.com/models/yolo-world/#key-features 我这里使用yolov8s-world.pt举例 最简单的使用示例 if __name__ __main__:model YOLO(model/yolov8s-world.pt)results model.pre…

开发一个农场小游戏需要多少钱

开发一个农场小游戏的费用因多个因素而异,包括但不限于游戏的规模、复杂性、功能需求、设计复杂度、开发团队的规模和经验,以及项目的时间周期等。因此,无法给出确切的费用数字。 具体来说,游戏的复杂程度和包含的功能特性数量会直…

【Android】Activity task和Instrumentation杂谈

文章目录 activity taskInstrumentation机制参考 Android不仅可以装载众多的系统组件,还可以将它们跨进程组成ActivityTask,这个特性使得每个应用都不是孤立的。 activity task 从数据结构角度看,Task有先后之分,源码实现上采取了…

蓝桥杯2024年第十五届省赛真题-好数

思路:枚举所有数,每个数分别判断。代码时间复杂度虽然是n^2,但是由于判断的数长度最长是7位,用字符串处理最多只循环7次,所以最大时间复杂度小 7*10的七次方,不会超时。库中的to_string时间复杂度太大&…

保存的链接

vector:https://blog.csdn.net/mataojie/article/details/121769508 vscode配置:https://blog.csdn.net/qq_45807140/article/details/112862592 配置VS2019:https://blog.csdn.net/qq_45782378/article/details/113043087 安装流程图以及一…