1.数据类型介绍
C语言提供了丰富的数据类型来描述生活中的各种数据。
所谓“类型”,就是相似的数据所拥有的共同特征,编译器只有知道了数据的类型,才知道怎么操作数据。
1.1数据类型
下面盘点一下C语言提供的各种数据类型,本章节主要探讨内置数据类型:
- 具体解释:
1.2 各种数据类型的长度
每一种数据类型都有自己的长度,使用不同的数据类型,能够创建出长度不同的变量,变量长度不同,存储的数据范围就有差异。
1.2.1 sizeof操作符
sizeof操作数如果不是类型,可以省略掉括号。
sizeof计算结果是size_t类型。
size_t ——是一种类型,是专门为了sizeof设计的,就是sizeof返回值的类型。
size_t 其实是一种无符号的整型。
size_t的返回值的类型可能是 —— 对应printf()占位符:
unsiged ——%u
unsigned long ——%lu
unsigned long long ——%llu
C语言提供了一个解决方法,创造了一个类型别名 size_t,用来统一表示 sizeof 的返回值,对应printf()占位符为 %zd。
1.2.2 sizeof测量数据类型长度:
1.2.3 sizeof中表达式不计算!
- 本题主要看int:把m + 3 放进 n ,4放进2,只能放进2
2. signed(有符号的)和unsigned(无符号的)
- C 语言使用 signed 和unsigned 关键字修饰 字符型和整型 类型的。
- signed 关键字,表示一个类型带有正负号,包含负值 ;unsigned 关键字,表示该类型不带有正负号,只能表示零和正整数。
- 对于int 类型,默认是带有正负号的,也就是说 int 等同于signed int。(关键字 signed 一般都省略不写,但是写了也不算错。)
- int 类型也可以不带正负号,只表示非负整数。这时就必须使用关键字"unsigned 声明变量。
- 整数变量声明为unsigned 的好处是,同样长度的内存能够表示的最大整数值,增大了一倍。
signed int == int
unsigned int == unsigned
大部分编译器上,char == signed char ,但不一定。
3. 数据类型的取值范围
每一种数据类型有自己的取值范围,也就是储存的数值的最大值和最小值的区间。
如果要查看当前系统上不同数据类型的极限值:
4. 变量
4.1 变量的创建
类型是用来创建变量的。
C语言中把经常变化的值称为变量,不变的值称为常量。
变量创建的语法形式是这样的:
变量在创建的时候就给一个初始值,就叫初始化。
4.2 变量的分类
- 全局变量:在大括号外部定义的变量就是全局变量。
- 局部变量:在大括号内部定义的变量就是局部变量。
如果全局变量和局部变量同名时,局部变量优先使用。
全局变量和局部变量在内存中存储在哪里呢?
一般我们在学习C/C++语言的时候,我们会关注内存中的三个区域:栈区、堆区、静态区。
标签:字符,变量,int,scanf,数据类型,占位,类型,C语言 From: https://blog.csdn.net/2401_85219263/article/details/139275165