c语言存储类型关键字作用,c语言学习笔记.关键字.存储类型关键字等

关键字const

1.修饰变量。

修饰的对象为常量,只读。

2.修饰指针。

const 也可以和指针变量一起使用,这样可以限制指针变量本身,也可以限制指针指向的数据。

const 离变量名近就是用来修饰指针变量的,离变量名远就是用来修饰指针指向的数据,如果近的和远的都有,那么就同时修饰指针变量以及它指向的数据。

3.修饰函数的参数。

用在函数形参中,如果形参是一个指针,为了防止在函数内部修改指针指向的数据,就可以用 const 来限制。

关键字static

用于定义全局静态变量

1、修饰局部静态变量

存储在静态存储区,在程序整个运行期间都不释放。在所处模块初次运行时进行初始化工作,且只操作一次。

2、修饰外部静态变量/函数

用来表示不能被其他文件访问的全局变量和函数。但为了限制全局变量/函数的作用域,函数或变量前加static使得函数成为静态函数。但此处“static”的含义不是指存储方式,而是指对函数的作用域仅局限于本文件(所以又称内部函数)。注意此时,对于外部(全局)变量,不管是否有static限制,它的存储区域都是在静态存储区,生存期都是全局的。此时的static只是起作用域限制作用,限定作用域在本模块(文件)内部。

关键字auto

即为自动局部变量,存储在栈上,当函数结束时,随之释放。

关键字extren

声明变量是在其他文件正声明(也可以看做是引用变量)。

关键字register

声明寄存器变量。

关键字volatile

说明变量在程序执行中可被隐含地改变。

变量如果加了 volatile 修饰,则会从内存重新装载内容,而不是直接从寄存器拷贝内容。

确保本条指令不会因编译器的优化而省略,且要求每次直接读值。

关键字typedef

数据结构的表示(存储结构)用类型定义(typedef)描述。

与#define不同,typedef创建的符号名只受限于类型,不能用于值。

typedef由编译器解释,不是预处理器。

C语言学习笔记--enum和sizeof关键字

1.enum关键字 C语言中enum关键字用来定义枚举类型 (1)enum 是 C 语言中的一种自定义类型(2)enum 值是可以根据需要自定义的的整型值(3)第一个定义的 enum 值默认为 0 ( ...

C语言学习笔记--const 和 volatile关键字

1.const关键字 (1)const 修饰的变量是只读的,它不是真正的常量,本质还是变量,只是告诉编译器不能出现在赋值号左边! (2)const 修饰的局部变量在栈上分配空间 (3)const 修饰 ...

C语言学习笔记--struct 和 union关键字

1.struct关键字 C 语言中的 struct 可以看作变量的集合struct中的每个数据成员都有独立的存储空间. 结构体与柔性数组 (1)柔性数组即数组大小待定的数组 (2)C 语言中可以由结构 ...

【C语言学习笔记】存储类、链接和内存管理

因为对内存管理部分一直没有很清楚的思路,所以一直在找资料想系统看一下这部分的内容.在C primer plus里看到了这一章,虽然大多都是心知肚明的东西,但是还是很多概念性系统性的东西让我眼前一亮,把 ...

C语言学习笔记1-数据类型和标识符

http://blog.csdn.net/jadeshu/article/details/50751901 1.数据类型 ---1.1基本类型 --------------数值型(short(2) i ...

Go语言学习笔记(9)——接口类型

接口 Go 语言提供了另外一种数据类型即接口,它把所有的具有共性的方法定义在一起,任何其他类型只要实现了这些方法就是实现了这个接口. /* 定义接口 */ type interface_name in ...

初步swift语言学习笔记2(可选类型?和隐式可选类型!)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值