C语言基础-基本数据类型(2)
2026/4/25 21:38:03 网站建设 项目流程

一. 变量

1.1 变量的存储

变量根据其所属数据类型的大小,在内存中开辟空间。变量也是可变的。

eg:

结果:

注意:当创建变量不初始化时,系统会自动初始化成随机值

这里的随机值是0

1.2各种类型的变量

1.2.1 整型变量

注意:int类型打印用%d

unsigned类型打印用%u

long类型打印用%ld

1.2.2 浮点变量

注意:float类型打印用%f

double类型打印用%lf

%.15lf表示打印到小数点后15位

1.2.3 字符变量

注意:打印字符变量用%c

字符变量存储时在内存中存储的是其ASCII码,故以%d的形式打印时直接打印其ASCII码,同样,也可通过字符的ASCII码给字符变量赋值或者初始化。

二. 表达式

表达式是有类型的。

表达式是有值的。

结果:

三. 运算符

3.1 双目运算符

+
-
*
/

两个操作数都是整型,执行整型除法,结果是整型。当有一个操作数是浮点数时,则执行浮点数的除法,结果是浮点数。

%求余操作数,两个操作数必须是整型

3.2 单目运算符

++

(1) 自增运算符。

(2) ++a:先加加后使用

(3) a++:先使用后加加

(4) 操作数为变量,浮点数也支持自增操作

--

(1) 自减运算符。

(2) ++a:先减减后使用

(3) a++:先使用后减减

(4) 操作数为变量,浮点数也支持自减操作

3.3 赋值运算符

=
+=
-=
*=
/=

(1)左值:只能是变量,不能是常量,表达式。

(2)右值:可以是变量,常量,表达式。

(3) 如果在赋值运算符左右两侧的数据类型不一样时,会按照以下规则进行转换

a. 将浮点数给整数赋值,则会丢弃小数部分

b. 将整数给浮点数赋值,则会扩展小数位

c. 如果左右两边占用内存空间大小相同,则完成内存的拷贝

d. 内存空间小的赋值给内存空间大的,如果最高位是0,则全补0,如果最高位是1,则全补1

e. 内存空间大的赋值给内存空间小的,则会发生高位截断

复合赋值运算符:

3.4 其他运算符

关系运算符:> >= < <= == !=

逻辑运算符:&& || !

逗号:

sizeof: 求常量,变量,数据类型所占内存空间的大小,单位为字节。

3.5 运算符的优先级与结合性

优先级:

单目>双目>三目>赋值>逗号

算术运算符>移位运算符>关系运算符>位运算符>逻辑运算符

结合性:

自右向左:条件运算符(? :),赋值运算符,单目运算符

其余大部分都是自左向右结合

四. 混合数据类型

1. 如果相同类型的数据进行运算, 结果是相同类型
2. 如果不同数据类型进行运算,就会发生隐式类型转换 。隐式转换(自动转换)会把低精度的数据类型向高精度的数据类型转换。如果相同类型会向内存空间占用大的转换: 例如:int会向unsigned int转。

4.1 隐式类型转换

规则:

4.2 显示类型转换/强制类型转换

结果:

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询