1.数据类型、变量、常量、作用域、生命周期

本文介绍了C语言中的基本数据类型,包括字符、整型、浮点型以及它们的字节数。同时,讨论了变量和常量的概念,变量的分类(局部和全局),作用域和生命周期。还提到了常量的几种形式,如字面常量、const修饰的常量、#define定义的常量和枚举常量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据类型

char	//字符数据类型 - 1byte
short	//短整型 - 2byte
int		//整型 - 4byte
long	//长整型 - 4byte
long long	//更长的整型 - 8byte
float	//单精度浮点数 - 4byte
double	//双精度浮点数 - 8byte
//C语言中有没有字符串类型?
  • 为什么出现这么的类型?

    使用计算机语言来编写程序,解决生活中的问题,而且必须要有能力来描述生活中的问题。例如:购物商城 - 价格 - 15.6元 - 小数。

    注意:存在这么多的类型,其实是为了更加丰富的表达生活中的各种值

  • 每种类型的大小是多少?

#include <stdio.h>

int main()
{
	//sizeof - 关键字 - 操作符 - 计算类型或变量所占空间的大小
    //sizeof单位是什么? - 字节 byte
	printf("%d\n", sizeof(char));	//1byte
	printf("%d\n", sizeof(short));	//2byte
	printf("%d\n", sizeof(int));	//4byte
	printf("%d\n", sizeof(long));	//4byte
	printf("%d\n", sizeof(long long));	//8byte
	printf("%d\n", sizeof(float));	//4byte
	printf("%d\n", sizeof(double));	//8byte

	return 0;
}

计算机中的单位:

bit - 比特位 
byte - 字节 = 8bit
KB - 1024byte
MB - 1024KB
GB - 1024MB
TB - 1024GB
PB - 1024TB

变量、常量

常量 - 不i能改变的量

变量 - 能被改变的量

定义变量的方法

int age = 18;
float weight = 45.5f;
char ch = 'w';

变量的分类

  • 局部变量
  • 全局变量
//全局变量 - {}外部定义的变量
int a = 100;

int main() {
	//局部变量 - {}内定义的变量
	//当局部变量和全局变量名字冲突的情况下,局部优先
	//不建议把全局变量和局部变量名字写成一样
	int a = 10;
	printf("%d", a);	//10

	return 0;
}

变量的使用

作用域

//作用域和生命周期
//局部变量的作用域:就是变量所在的局部范围
//全局变量的作用域:整个工程

int g_val = 2023;//全局变量
int main()
{
	printf("1:%d\n",g_val);
	{
		printf("2:%d\n", g_val);
		int a = 10;
		printf("a = %d\n", a);
	}
	printf("3:%d\n", g_val);

	return 0;
}

//执行结果如下:
1:2023
2:2023
a = 10
3:2023

生命周期 - 变量的创建和销毁之间的时间段

局部变量的生命周期:进入局部范围生命开始,出局部范围生命结束

全局变量的生命周期:程序的生命周期

常量

C语言中常量分为以下几种:

  • 字面常量
  • const 修饰的常量
  • #define 定义的标识符常量
  • 枚举常量
#define MAX 1000
enum Sex
{
	//这种枚举类型的变量的未来可能取值
	//枚举常量
	MALE = 3,//赋初值
	FEMALE,
	SECRET
};

int main()
{
	//1.字面常量
	3.14;
	10;
	'a';
	"abcd";

	//2.const修饰的常量
	const int num = 10;//num就是常变量 - 具有常属性(不能被改变的属性)

	//3.#define 定义的标识符常量
	int n = MAX;

	//4.枚举常量
	//可以一一列举的常量
	enum Sex s = MALE;

	return 0;
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值