C语言关键字之const和volatile

简介: C语言关键字之const和volatile

const关键字:


int main()
{
  int a = 0;
  int* p = &a;
  const int* p = &a;                //p指向的变量不可直接被修改
  int const* p = &a;                //p指向的变量不可直接被修改
  int* const p = &a;                //p的内容不可直接被修改,p指向不能改
  const int* const p = &a;          //p指向的变量不可直接被修改并且p指向也不能改
    //const关键字有两个作用,一个是给编译器看,一个是给程序员看
  //给程序员看是告诉程序员这个变量是不希望被修改的,如果确实要
  //修改,那么程序员首先要想清楚自己修改它的目的是什么,要预测
  //修改后存在的后果。const不会对任何一个被修饰的变量进行强约束
  //可以通过间接的方法进行修改
  return 0;
}


volatile关键字



相关文章
|
1天前
|
缓存 安全 编译器
【C语言】volatile 关键字详解
`volatile` 关键字在 C 语言中用于防止编译器对某些变量进行优化,确保每次访问该变量时都直接从内存中读取最新的值。它主要用于处理硬件寄存器和多线程中的共享变量。然而,`volatile` 不保证操作的原子性和顺序,因此在多线程环境中,仍然需要适当的同步机制来确保线程安全。
14 2
|
6月前
|
C语言
C语言学习记录——模拟字符串相关函数(strcpy、strlen、strcat)相关知识-const、typedef
C语言学习记录——模拟字符串相关函数(strcpy、strlen、strcat)相关知识-const、typedef
32 1
|
5月前
|
C语言
|
5月前
|
存储 C语言
C语言中static关键字的作用与用法解析
C语言中static关键字的作用与用法解析
|
6月前
|
存储 C语言
C语言中的typedef关键字:为类型定义新名称
C语言中的typedef关键字:为类型定义新名称
|
6月前
|
C语言
深入探索C语言中的sizeof关键字
深入探索C语言中的sizeof关键字
|
6月前
|
存储 编译器 C语言
C语言中的关键字与标识符详解
C语言中的关键字与标识符详解
130 0
|
6月前
|
C语言
【C语言】:const的使用方法
【C语言】:const的使用方法
29 0
|
编译器 程序员 C语言
C语言关键字详解(五)带你全面了解 volatile 关键字
C语言关键字详解(五)带你全面了解 volatile 关键字
374 0
C语言关键字详解(五)带你全面了解 volatile 关键字