C语言的const和volatile怎么使用
const关键字的使用
1、const关键字用于修饰变量,表示变量的值不可以被改变,只能被读取。它可以修饰全局变量、局部变量、类的成员变量等,如:
int const a = 10;
2、const关键字可以修饰函数的参数,表示函数的参数不可以被修改,如:
void func(int const a)
3、const关键字可以修饰函数的返回值,表示函数的返回值不可以被修改,如:
int const func()
volatile关键字的使用
1、volatile关键字用于修饰变量,表示变量的值可能会被外部程序改变,编译器不会做优化,每次读取变量的值都从内存中读取,如:
int volatile a;
2、volatile关键字可以修饰函数的参数,表示函数的参数可能会被外部程序改变,编译器不会做优化,每次读取变量的值都从内存中读取,如:
void func(int volatile a)
3、volatile关键字可以修饰函数的返回值,表示函数的返回值可能会被外部程序改变,编译器不会做优化,每次读取变量的值都从内存中读取,如:
int volatile func()
const和volatile的区别
1、const关键字用于修饰变量,表示变量的值不可以被改变,只能被读取;而volatile关键字用于修饰变量,表示变量的值可能会被外部程序改变,编译器不会做优化,每次读取变量的值都从内存中读取。
2、const关键字可以修饰函数的参数和返回值,表示函数的参数或返回值不可以被修改;而volatile关键字可以修饰函数的参数和返回值,表示函数的参数或返回值可能会被外部程序改变,编译器不会做优化,每次读取变量的值都从内存中读取。
3、const关键字可以用于修饰指针,表示指针指向的内容不可以被修改,但是指针本身可以被修改;而volatile关键字不能用于修饰指针,因为它只能用于修饰变量。
猜您想看
-
使用Eclipse过程报错:java.lang.OutOfMemoryError: PermGen space怎么解决
一、什么是ja...
2023年05月26日 -
PostGIS中常用查询sql有哪些
PostGIS...
2023年07月23日 -
mdnice有什么新特性
MDNICE的...
2023年05月26日 -
如何理解SimpleDateFormat
SimpleD...
2023年07月21日 -
如何将普通的Thread多线程改为Java8的parallelStream并发流
使用paral...
2023年07月21日 -
Java8函数式的思考方法是什么
什么是Java...
2023年05月26日