你知道这两个C语言小知识吗?


前言

这两个C语言中需要注意的小知识你都了解了吗

一、局部变量和全局变量

局部变量和全局变量的区别,通俗的说,就是局部变量在花括号内部,而全局变量在花括号外部,那么这样会引出一个问题-局部变量和全局变量的作用域分别是哪?

我们说:局部变量的作用域也就是局部变量的范围,换句人话就是它所在的花括号内,如下所示:

int main()
{
	{//1
		int a = 100;
		printf("%d\n", a);
	}//2
	//大括号外不能再用这个a了
	return 0;
}

这里的1和2合起来就是a的作用域,而出了这个括号以后,再使用a就会报错了,因为a已经不在了。

而全部变量的作用域则是整个工程,注意,是整个工程哦,什么意思呢,就是说,我假如在一个文件中声明了变量,是可以跑到另外一个文件去调用的,前提就是他们在一个工程中,例如
在这里插入图片描述
我现在在test.c中声明了一个int类型的变量并初始化为10,之后我跳转到test2.c中写这样一句代码extern int a
这之后就能用到test.c中的a了,如下图:
在这里插入图片描述
在这里插入图片描述

二、C语言常量

C语言的常量一共有如下几种:
1.字面常量
2.const修饰的常变量
3.#define定义的标识符常量
4.枚举常量
下面主要谈谈const修饰的常变量,首先它叫常变量,所以一定是一个变量,这是可以证明的,比如,大家都知道数组的下标必须是一个常量,那把const修饰的东西当作数组下标去试一试就知道答案了
msvc下:
在这里插入图片描述
gcc下:
在这里插入图片描述

总结

以上就是全部的内容,希望大家多多点赞
在这里插入图片描述

  • 8
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值