C语言const的用法

C语言const的用法1 const 的用法 const 是 constant 的缩写 意思是 恒定不变的 它是定义只读变量的关键字 用 const 定义只读变量的方法很简单 就在定义变量时前面加 const 即可 如 constdoublep 3 用 const 定义的变量的值是不允许改变的 不允许给它重新赋值 即使是赋相同的值也不可以 所以说它定义的是只读变量 这也就意味着必须在定义的时候就给它赋

1、const的用法

const是constant的缩写,意思是“恒定不变的”,它是定义只读变量的关键字。用const定义只读变量的方法很简单,就在定义变量时前面加const即可,如:

 const double pi = 3.; 

用const定义的变量的值是不允许改变的,不允许给它重新赋值,即使是赋相同的值也不可以。所以说它定义的是只读变量。这也就意味着必须在定义的时候就给它赋初值,如果程序中试图改变它的值,编译的时候就会报错。

示例(book.c)

/* * 程序名:book.c,此程序演示只读变量 * 作者:C语言技术网(www.freecplus.net) 日期: */ #include  
     int main() { 
    const double pi=3.; // 定义只读变量 pi=3.; // 试图改变只读变量的值。 } 

编译效果
在这里插入图片描述

2、const与define的区别

1)define是预编译指令,而const是变量的定义。define定义的宏是在预处理阶段展开的,而const定义的只读变量是在编译运行阶段使用的。

2)const定义的是变量,而define定义的是常量。define定义的宏在编译后就不存在了,它不占用内存,因为它不是变量,系统只会给变量分配内存。但const定义的常变量本质上仍然是一个变量,具有变量的基本属性,有类型,占用存储单元。

3)const定义的是变量,而宏定义的是常量,所以const定义的对象有数据类型,而宏定义的对象没有数据类型。所以编译器可以对前者进行类型安全检查,而对后者只是机械地进行字符替换,没有类型安全检查。

3、const修饰函数的参数

在给函数传参数时(如变量的地址),为了防止在函数内部改变参数的值(指针指向的值),通常用const来修饰函数的参数,给该函数传一个不可改变的值。

4、获取视频教程

5、版权声明

C语言技术网原创文章,转载请说明文章的来源、作者和原文的链接。

来源:C语言技术网(www.freecplus.net)

作者:码农有道

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/207065.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午2:31
下一篇 2026年3月19日 下午2:32


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号