侧边栏壁纸
博主头像
张种恩的技术小栈博主等级

行动起来,活在当下

  • 累计撰写 748 篇文章
  • 累计创建 65 个标签
  • 累计收到 39 条评论

目 录CONTENT

文章目录

C语言学习小记(12)-const关键字

zze
zze
2024-03-28 / 0 评论 / 0 点赞 / 27 阅读 / 3293 字

定义与概述

const 是 C 语言中的一个关键字,主要用于声明常量或定义不可修改的变量。在程序中使用const可以增加代码的可读性和安全性,防止意外修改不应改动的数据。

主要用法

声明常量

const int PI = 3.14159265; // 声明一个整型常量PI

这里声明了一个不可更改的整型常量 PI,在程序执行期间其值始终保持不变。

修饰指针

  • 常量指针(指向常量的指针)

const int value = 10;
int const *ptr = &value; // ptr是一个指向常量int的指针
*ptr = 20; // 错误,不能通过指针修改常量值

常量指针指向的内存区域是不可修改的。

  • 指针常量(常量指针)

int value = 10;
int *const ptr = &value; // ptr是一个常量指针,不能再指向其他地址
*ptr = 20; // 正确,可以修改指针指向的内容
ptr = &another_value; // 错误,不能改变ptr的地址
  • 指向常量的常量指针

const int value = 10;
const int *const ptr = &value; // ptr是一个指向常量int的常量指针
*ptr = 20; // 错误,不能通过指针修改常量值
ptr = &another_value; // 错误,不能改变ptr的地址

这种类型的指针既不能改变指向的地址,也不能通过它修改所指向的常量值。

函数参数

void printValue(const int val) {
    // ...
}

在函数参数中使用const关键字可以明确告知编译器,函数内部不会修改这个参数的值,提高了代码的可读性和安全性。

成员函数中的 const 关键字

class MyClass {
public:
    void display() const; // 声明一个常量成员函数
};

void MyClass::display() const {
    // 在这个函数内部,不能修改类的成员变量(除非它们是mutable的)
}

在类成员函数声明或定义前加上const关键字,意味着这个函数不会修改类的任何成员变量,这样的函数被称为常量成员函数。


总结,const关键字在C语言中起到保护数据、约束指针行为以及增强代码语义的作用,可以帮助开发者写出更健壮和易于理解的代码。

0

评论区