C语言系列:关键字(一)

C语言系列:关键字(一)

前言

C语言标准中,最早有32个关键字。如下:
auto,break,case,char,const,continue,default,do,double,
else,enum,extern,float,for,goto,if,int,long,register,return,short,signed,sizeof,static,struct,switch,typedef,
union,unsigned,void,volatile,while。

下面分几节,讲讲常见的面试容易被问到的几个关键字。

一、static

static的作用:
 修饰静态局部变量。改变了变量的存储方式,改变了变量的生命周期,但不改变它的作用域。static 变量只被初始化一次,下一次依据上一次的结果值。
 修饰静态全局变量。静态全局变量限制了全局变量的作用域,只在定义该全局变量的源文件中有效,其他源文件不能引用它。
 修饰静态函数。static 修饰的静态函数,只在定义它的源文件中有效,别的文件不能调用该函数。

二、extern

extern的作用:
 修饰全局变量。改变变量的作用域,用extern修饰别的源文件中的全局变量,本文件也可以访问。
 修饰函数。同全局变量类似,用extern修饰的函数,可以在别的源文件中访问。
 extern “c” 。在c语言面试专题之编译中讲过,用来指定c++代码中的c代码的编译方式。

三、const

const的作用:
 修饰常量,防止被修改。
 修饰函数参数,表示函数调用时,参数的值不会被改变。
 对于指针而言,可以指定指针本身为const,也可以指定指针所指的数据为const,举个例子,const int b = &a;或者int const b = &a;修饰的都是后面的值,分别代表*b和b不能改变。

四、volatile

概括来说,volatile的作用是防止编译器优化,保证每次访问的变量都从内存中读取,而不是从编译器优化后的缓存中读取。

扫描二维码关注博主公众号,了解更多。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ddsrgy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值