C语言:数据类型、变量&常量 基本常识

数据类型

它的作用就是开辟空间,存放大小(创建变量的大小)
基本的如下:

数据类型大小(单位:字节)
char(字符)1
short(短整型)2
int(整型)4
long(长整型)在32位平台下,占4个字节;64位平台下,占8个字节
long long(更长的整型)8
float(单精度浮点型)4
double(双精度浮点型)8

变量

1.定义变量的方法:
类型+变量名->创建变量

int age = 150;
char ch = "w";

2.变量的分类:局部变量、全局变量
代码块内部
定义的变量是局部变量,在代码块外部定义的变量是全局变量,当局部变量和全局变量同名时,局部变量优先使用
看代码理解一下:

#include<stdio.h>
int global = 2019;//全局变量
int main()//代码块内部
{
	int local = 2018;//局部变量
	int global = 2020;//显然,和代码块外部的变量相同
	printf("global = %d\n",global);//2020(局部优先)
	return 0;
}

3.变量的作用域和生命周期
作用域:
限定这个名字的可用性的代码范围就是这个名字的作用域。(简单理解:就是变量在哪可以使用,哪里就是作用域)

  • 局部变量的作用域是变量所在的局部范围
  • 全局变量的作用域是整个工程

生命周期:
变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段

  • 局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。
  • 全局变量的生命周期是:整个程序的生命周期

看代码理解一下:

#include<stdio.h>
int main()
{//下面的age在这个代码块内使用,那么这个代码块就是它的作用域,生命周期也就从这里开始
   int age = 10;
   {//下面的age同理
   	int age = 5;//第二个age生命周期开始
   	printf("age = %d\n", age);//age = 5
   }//第二个age生命周期结束
   printf("%d\n",age);//10
   return 0;
}//第一个age出了代码块生命周期就结束了

常量

C语言的常量分以下几种:

  • 字面常量(20,1…这些都为字面常量)
  • const 修饰的常变量
    常变量是变量,但被const修饰,就可以理解为被保护起来了,所以不能被修改(在C++中,const修饰的为常量)
#include<stdio.h>
int main()
{//不加const:
	int num1 = 0;
	num1 = 20;
	printf("num1 = %d\n",num1);//num1 = 20
//加const之后:
	const int num2 = 0;//加了const之后,num2就不能被修改啦
	num2 = 20;
	prinf("num2 = %d\n",num2);//num2=0
   
     const int n = 10;
    // int arr[n] = {0};//该句错误,数组中的n应为常量,在这里,n加了const,就成常变量(变量)了	
     int arr[10] = {0};//改正是这样的

}

总结一下,当需要一个不被改变的量的时候,const可以修饰;当需要常量时,const修饰的n是常量,而在C++中,为常量。

  • #define 定义的标识符常量
#define MAX 100//将 MAX 定义为100
  • 枚举常量

用代码理解:

#include<stdio.h>
enum Sex//enum为枚举关键字
{
	MALE,//枚举常量//默认初始值,从0开始。0、1、2....
	//如果 MALE 赋初始值,比如MALE=5,那么初始值就从5开始,5,6,7....
	FEMALE,
	SECRET
};
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值