首页 > 编程语言 > 详细

C语言——C语言常用关键字总结(新手 还请不吝赐教)(一)

时间:2021-03-12 00:25:37      阅读:32      评论:0      收藏:0      [点我收藏+]
先总结一下常用的关键字,在后期的学习中会进行一一解释补充

auto(自动) break(中断循环) switch …… case char(字符类型) const (定义常变量) continue(继续循环) default
do……while double(双精度浮点型) if …… else enum(枚举型) extern(外部变量声明符) float(单精度浮点型) for goto
int (整型) long(长整型) register(寄存器操作符) return(返回) short(短整型) signed(有符号,通常省略) sizeof(计算字符串长度 单位:字节) static(静态变量) struct(结构体) typedef(类型定义符、可理解为类型重命名) union(联合体/公用体) unsigned(无符号) viod(无) volatile

这里挑选几个我会的进行简单的介绍:
extern:
技术分享图片
技术分享图片
如图,我创建了两个.c文件,将document定义在“test 辅助.c”文件内,当需要在test C关键字介绍 文件内使用document时,可以使用extern 声明外部符号,直接进行引用,无需重复定义。
typedef :
例:
此时我们定义一个无符号整型数
int main()
{
unsigned int a = 20;
printf("%d\n", a);
return 0;
}
如上操作,unsigned int 类型符 太过复杂,此时我们可以使用typedef 去重新定义unsigned int 这个类型符的名字,如下操作
typedef unsigned int u_int ; // 注:typedef后面必须跟类型符 之后在有一个自己想要的名字
u_int b=20;
此时b和a是同种类型的
static :1、延长局部变量的生命周期 2、改变全局变量的作用域 3、static 修饰函数
1、如图:
技术分享图片 技术分享图片
我们输入这样一个函数体,输出的结果为5个1,因为a是一个局部变量,当其出了自己的运行空间后,a的生命周期就结束了,因此当主函数再次调用test函数时,a的值又变回了0,所以经过5次输出,a的值都为1;
当在int a前加上static时,输出结果变为1,2,3,4,5;经过调试,发现static语句,函数只执行了一次,即主函数第二次调用test函数时,直接跳过了static这个语句,执行a++,a的值没有再次被置0;这说明static关键字可以延长局部变量的生命周期,并具有记忆功能。
技术分享图片
2、又如extern 那个例子,我们在test辅助 这个文件中的全局变量document前加上一个static后,再次编译程序,就会发现会报如下错误(无法解析外部指令)。static让本能调用的全局变量失效了,这证明其改变了全局变量的作用域;让静态全局变量只能在自己所在的原文件内部使用
技术分享图片

技术分享图片
3、static修饰函数时,类似于修饰全局变量,一个函数本身具有外部链接属性,经过static修饰后,函数体只能用在本身所在的原文件中使用;
技术分享图片技术分享图片
如上图所示操作,在test辅助文件中定义test函数,在test C关键字介绍中引用test函数,通过extern声明,函数是可以成功运行输出1,2,3,4,5,的,但在test()前面加上static关键字后,系统就会报如下错误,找不到test函数;此时static改变了函数的连接属性;
技术分享图片

C语言——C语言常用关键字总结(新手 还请不吝赐教)(一)

原文:https://blog.51cto.com/15126924/2656501

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!