关于C语言关键字const和指针组合的不同含义

首先说一下C语言的关键字const。
const是一个C语言(ANSI C)的关键字,具有着举足轻重的地位。它限定一个变量不允许被改变,产生静态作用。
好处在于在一定程度上可以提高程序的安全性和可靠性。
例如: const int Max=100;
Max的值 就固定为100,当你对Max进行运算时,编译器会提示错误。
我们在阅读源码时经常会遇到const char * abc;这类得语句。但是你是否真正明白这类语句的含义呢,现在我们来具体说一下。
const和指针的组合可分为四类。
1. const int *p; p是一个指针,指针指向 int型数据。p所指向的是一个常量。
2. int const *p; p是一个指针,指针指向 int型数据。p所指向的是一个常量。
3. int *const p; p是一个指针,指针指向 int型数据。p本身是一个常量,p所指向的是
一个变量。
4.const int *const p; p是一个指针,指针指向 int型数据。p本身是一个常量,p所指向
也是一个常量。
结论和记忆方法:
const在 *前面,表示const作用于p所指向的量。所以p所指向的是个常量。
const在 *后面,表示p本身是常量,但p所指向的不一定是常量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值