【C语言专栏】:C语言数据类型和变量?

在这里插入图片描述

前言

通过上一层对C语言进行简单的概述,描述了C语言的基本语句和各种关键字。相信小伙伴们对C语言有了大致的了解。那么接下来说一说C语言的各种数据类型,以及C语言中变量的定义等知识点。👇👇👇

1. 数据类型介绍

在C语言当中啊,为我们提供了很多种数据类型,可以用来表示生活中的各种数据。下面我们来盘点一下C语言中数据类型的分类吧!👀👀👀

在这里插入图片描述

  • 对于bool类型,在C 语⾔原来并没有为布尔值单独设置⼀个类型,⽽是使⽤整数 0 表⽰假,⾮零值表⽰真。在之后的 C99 中才引⼊了布尔类型,专⻔表⽰真假的。

2. 各种数据类型长度

我们知晓了C语言的数据类型,那么接下来我们来看一看C语言中各种数据类型的长度吧,因为每⼀种数据类型都有⾃⼰的⻓度,使⽤不同的数据类型,能够创建出⻓度不同的变量,变量⻓度的不同,存储的数据范围就有所差异。在这不得不介绍一个操作符sizeof 操作符,专门用来求数据类型长度的。

2.1 sizeof操作符介绍

sizeof 是⼀个关键字,也是操作符,专⻔是⽤来计算sizeof的操作符数的类型⻓度的,单位是字节。sizeof 操作符的操作数可以是各种数据类型,也可是变量或者表达式

sizeof 的操作数如果不是类型,是表达式的时候,可以省略掉后边的括号的。
sizeof 后边的表达式是不真实参与运算的,根据表达式的类型来得出⼤⼩。
sizeof 的计算结果是 size_t 类型的。

#include<stdio.h>
int main()
{
	int a = 20;
	printf("%zd\n", sizeof(a));
	printf("%zd\n", sizeof  a);//a是变量是可以省略括号的
	printf("%zd\n", sizeof(int));
	printf("%zd\n", sizeof (5+2.3));//双精度浮点型
	return 0;
}
  • 结果如下:👇👇👇
    在这里插入图片描述

2.2 数据类型长度

此处直接用代码来展示数据类型的长度:👉👉👉

#include<stdio.h>
int main()
{
	printf("%zd\n", sizeof(char));
	printf("%zd\n", sizeof(short));
	printf("%zd\n", sizeof(int));
	printf("%zd\n", sizeof(long));
	printf("%zd\n", sizeof(long long));
	printf("%zd\n", sizeof(float));
	printf("%zd\n", sizeof(double));
	printf("%zd\n", sizeof(long double));
	return 0;
}
  • 结果如下:👇👇👇

在这里插入图片描述

2.3 数据类型取值范围

用图片展示取值范围:📺📺📺

在这里插入图片描述

2.4 sizeof 中的表达式不计算

【只关注类型,并且在用sizeof跟表达式的时候,只关注最终表达式的类型,表达式不进行计算】

#include<stdio.h>
int main()
{
	int a = 20;
	int b = 30;
	printf("%zd\n", sizeof(a = b + 5));
	printf("%d\n", a);
	return 0;
}

结果如下:很明显a的值没有发生变化,说明sizeof中的表达式不计算。

在这里插入图片描述

3. unsigned与signed

signedunsigned表示有符号(+正、-负)和无符号(只存储0和正整数),修饰字符型和整型。signed int等同于 int。一般定义signed的时候,可以省略不写。

数据变量声明为unsigned类型的好处:同样长度的内存能够表示的最大整数值,增大了一倍。比如:16位的signed short int 的取值范围为:-32768~32767,最大是32767;而unsigned short int 的取值范围是:0~65535,最大是65535。

4. C语言变量的介绍

了解清楚了类型,我们使⽤类型做什么呢?类型是⽤来创建变量的。什么是变量呢?C语⾔中把经常变化的值称为变量,不变的值称为常量。接下来看看变量的创建。

4.1 变量的定义

  • 创建语法:data_type[数据类型] name[变量名];
    在这里插入图片描述

4.2 变量的分类

变量可以分为全局变量【在大括号之外定义的】和局部变量【大括号内部】。

在这里插入图片描述

【注意:当全局变量和局部变量的名字相同时,遵循局部变量优先】

在这里插入图片描述

4.3 变量的存储位置

首先,计算机内存三大区:栈区、堆区、静态区。

在这里插入图片描述

  • 然而创建变量的本质是在内存中申请一块空间。
    局部变量在栈区、全局变量在静态区、堆区是用来动态内存管理的。

4.4 变量的初始化

当变量为局部变量的时候,系统不会自动初始****化,需要自己手动初始化。而全局变量系统会自动初始化,以下是全局变量各种数据类型对应的初始化的值
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

此篇博客就描述这些类容了👌👌👌👌👌多多支持。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值