C 语言修饰变量的关键字 const 和 register

本文介绍了C语言中的const和register关键字。const用于修饰常量,使变量变为不可更改,但通过指针仍可变通。register是寄存器变量修饰符,用于提示编译器将变量存储在速度更快的寄存器中,提高运行效率。文章详细讲解了二者使用时的注意事项和限制条件。
摘要由CSDN通过智能技术生成

​C 语言中的关键字还是挺多的,比如经常看的类型关键字,如 int、char、float、struct、union、enum等;判断结构和循环结构的关键字,if、else、for、while等等;还有类型定义关键字 typedef。

本篇文章来和大家来介绍 const 和 register 关键字。这两个又叫做修饰符,用来修饰变量的,让普通的变量产生特殊的意义。

1. const

const 意为常量,在C语言中表示为常量修饰符

当一个变量带上 const 关键字,那么这个变量就成了一个常量。

常量是不可更改的变量,即在一开始定义后,就不可以再直接修改了。且常量在定义的同时就要进行初始化,否则就是错误的。

例如,将一个变量 a 通过 const 定义为常量,并给它初始化一个值为 1。后面想通过赋值运算符来修改常量 a 的值,就不能了。

const a = 1;
a = 2; // 这种做法是错误的

那么,常量的值就一定不能修改吗?

也不一定,C 语言中有一个二五仔,指针。你说不可能的事,我偏偏就要把它变成可能。

#include<stdio.h>
int main(){
  const int a = 1;
  printf("常量a的值为%d  ", a);
  int *pa = (int*)&a;
  *pa = 99;
  printf("
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值