const和volatile和restict

目录

1.const

1.1在指针和形参中使用

1.2全局使用const

2.volatile

3.restrict


文章来源地址https://uudwc.com/A/y5wOW

1.const

const:使变量限定为不可改变

1.1在指针和形参中使用

在形参中使用最常见,防止函数修改被传入的参数

1.2全局使用const

防止某一函数修改  全局变量

2.volatile

volatile:程序不可改变,但代理(其它程序)可以改变的变量

高速缓存:两次操作都没有改变上述代码的值,x就被保存在寄存器中,使用时才读取,节约时间

val1=x;

val2=x;

3.restrict

restrict:限定这个指针是访问这个数据对象的唯一方式

作用是:1.告诉编译器可以优化  2.不让复制数据时的数据覆盖。

restrict *p;//只能用于指针限定

#include <stdio.h> 

static int d=4; 
extern int d;
int main(void)
{
	int ar[10];
	int * restrict p=(int *)malloc(10*sizeof(int));
	p=ar;
	
	return 0;
	
} 

这样就会报错。

原文地址:https://blog.csdn.net/m0_67794575/article/details/132891265

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

上一篇 2023年09月15日 02:01
Android嵌套事务
下一篇 2023年09月15日 02:01