【C语言】数据类型和变量

一、数据类型介绍

C语⾔提供了丰富的数据类型来描述⽣活中的各种数据。使⽤整型类型来描述整数,使⽤字符类型来描述字符,使⽤浮点型类型来描述⼩数。所谓“类型”,就是相似的数据所拥有的共同特征,编译器只有知道了数据的类型,才知道怎么操作数据。下⾯盘点⼀下C语⾔提供的各种数据类型,本章节主要探讨内置数据类型。

1.1整形

1.1整形
//短整型
short [int]
[signed] short [int]
unsigned short [int]
//整形
int
[signed] int
unsigned int
//长整型
long [int]
[signed] long [int]
unsigned long[int]
//c9中引入
//长长整形
long long [int]
[signed] long long [int]
unsigned long long [int]

1.2 浮点型

// 单精度小数
float
//双精度小数
double
//更长的小数
long double

1.3字符型

//字符
char
[signed] char
unsigned char

1.4布尔类型

C语言原来并没有布尔类型,用0代表假,用非零代表真。

在c99中引入了布尔类型,专门表示真假。

用布尔类型要包含头文件<stdbool.h>。

布尔类型取值,真为true,假为false

二、signed和unsigned

C语言使用signed和unsigned 修饰整形和字符型。

signed表示带符号类型。

unsigned表示不带符号类型。

对于整形默认是signed的,所以在使用时省略signed

signed int
//等于 int

整形变量使用unsigned的好处是,可以使表示范围扩大一倍。

unsigned int可以省略int。

unsigned int a
//可以写成 unsigned a

注意⚠️:C语言中char默认是否带符号,是根据当前系统来决定的。

三、数据类型取值范围

上述的数据类型很多,尤其数整型类型就有short、int、long、long long 四种,为什么呢?

其实每⼀种数据类型有⾃⼰的取值范围,也就是存储的数值的最⼤值和最⼩值的区间,有了丰富的类型,我们就可以在适当的场景下去选择适合的类型。如果要查看当前系统上不同数据类型的极限值:

limits.h ⽂件中说明了整型类型的取值范围。

float.h 这个头⽂件中说明浮点型类型的取值范围。

为了代码的可移植性,需要知道某种整数类型的极限值时,应该尽量使⽤这些常量。

SCHAR_MINSCHAR_MAX :signed char 的最⼩值和最⼤值。

SHRT_MIN SHRT_MAX :short 的最⼩值和最⼤值。

INT_MININT_MAX :int 的最⼩值和最⼤值。

LONG_MIN LONG_MAX :long 的最⼩值和最⼤值。

LLONG_MINLLONG_MAX :long long 的最⼩值和最⼤值。

UCHAR_MAX :unsigned char 的最⼤值。

USHRT_MAX :unsigned short 的最⼤值。

UINT_MAX :unsigned int 的最⼤值。

ULONG_MAX :unsigned long 的最⼤值。

ULLONG_MAX :unsigned long long 的最⼤值。


四、变量

4.1变量的创建

了解清楚了类型,我们使⽤类型做什么呢?

类型是⽤来创建变量的。 那么什么是变量呢?

C语⾔中把经常变化的值称为变量,不变的值称为常量。

变量创建的语法形式是这样的:

data_type  name
   |        |
数据类型   变量名

那么我们就可以定义很多变量

如:

int age; //整型变量
char ch; //字符变量
double weight; //浮点型变量

在创建变量的时候,为变量赋值叫初始化

如:

int age = 18;
char ch = 'w';
double weight = 48.0;
unsigned int height = 100;

4.2 变量的分类

• 全局变量:在⼤括号外部定义的变量就是全局变量

全局变量的使⽤范围更⼴,整个⼯程中想使⽤,都是有办法使⽤的。

• 局部变量:在⼤括号内部定义的变量就是局部变量

局部变量的使⽤范围是⽐较局限,只能在⾃⼰所在的局部范围内使⽤的。

如果局部和全局变量,名字相同呢?
 

#include <stdio.h>

int n = 1000;
int main()
{
    int n = 10;
    printf("%d\n" n);//打印的结果是多少呢?
    return 0;
}

于是我们得出结论,如果全局变量和局部变量重名,局部变量优先使用。

上述列出的都是C语言常见的数据类型,那么他们的大小是多少呢?

下一期博客,我们一起探究一下,这篇博客就讲到这里~

weixin073智慧旅游平台开发微信小程序+ssm后端毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值