《初识C语言》C语言中的运算符

 2024-02-22 04:02:15  阅读 0

1运算符和表达式

C语言运算符是描述特定操作的符号。 它们是构造 C 语言表达式的工具。 C语言的运算极其丰富。 除了控制语句和输入输出之外,几乎所有的基本操作都被处理为运算符。 除了算术运算符、关系运算符和逻辑运算符这三种常见类别外,还有一些用于完成特殊任务的运算符,例如按位运算符。

c运算符含义_c语言运算符详解_c语言运算符解释

算术运算符:用于算术运算,包括+、-、*、/等。

关系运算符:用于比较运算,包括>、关系运算符>&&>|| > 赋值运算符

2数据类型转换

2.1 强制类型转换:就是将表达式显式转换为需要的类型。

模式1:(类型名称)(表达式)。

模式2:(类型名称)表达式。

示例:强制类型转换。

c运算符含义_c语言运算符解释_c语言运算符详解

注意:强制类型转换不会改变原有变量和表达式的类型属性,只会转换为需要使用的类型。

2.2 隐式类型转换:整数、单精度、双精度等不同数值类型可以混合运算,运算过程中存在隐式类型转换。

隐式类型转换的规则是:从低位到高位转换,例如char和short可以转换为int。

3 算术运算符和算术表达式

3.1 基本算术运算符:包括+、-、*、/、%五个运算符。

3.2 特殊算术运算符:自加、自减。

前缀形式:先递增或递减操作数,然后将操作数的值引用为表达式的值。

后缀形式:首先引用操作数的值作为表达式的值,然后递增或递减操作数。 例子:

++a相当于a=a+1,--a相当于a=a-1;

a++相当于a=a+1,a--相当于a=a-1;

注:可以看出,单独使用时没有什么区别,但在表达式中对表达式的作用却不同。

示例代码:

c运算符含义_c语言运算符解释_c语言运算符详解

4 赋值运算符和赋值表达式

4.1 简单赋值运算符

简单赋值的作用是将表达式的值赋给变量进行存储,如a=4;

注意:赋值运算左边必须是变量;

赋值操作的优先级比较低,仅优先于,;

4.2 复合赋值运算符

就是将运算和赋值结合起来,比如+=、-=等。

例如:m+=3等价于m=m+3;

4.3 赋值表达式的运算

使用表达式时应注意的事项:

4.3.1 复合赋值运算符。

示例代码:

c语言运算符解释_c语言运算符详解_c运算符含义

5. 逻辑运算符

逻辑运算符根据表达式的值返回 true 或 false 值。 其实C语言中没有所谓的真值和假值。 只是非0为真值,0为假值。

符号函数

c语言运算符详解_c运算符含义_c语言运算符解释

例如:

c语言运算符详解_c运算符含义_c语言运算符解释

当表达式进行&&运算时,只要其中一个表达式为假,则总表达式为假。 只有当全部为真时,总表达式才为真。 当表达式执行 || 时运算时,只要其中一个表达式为真,则合计值为真。 只有当所有表达式都为假时,总表达式才为假。 逻辑非(!)运算将相应的变量数据转换为相应的真/假值。 如果它本来是假的,那么逻辑否定之后就会变成真; 如果它本来是真的,那么之后的逻辑否定就会变成假。

另一个重要的一点是,当逻辑表达式后半部分的值不影响整个表达式的值时,后半部分将不会被求值。 例如:

因为a=2为真值,所以无论b-1是否为真值,总表达式一定为真值,后面的表达式不再计算。

6 个关系运算符

关系运算符比较两个表达式并返回真/假值。

符号函数

c语言运算符解释_c语言运算符详解_c运算符含义

这些操作符大家都能理解。 主要问题是等于==和赋值=之间的区别。

有些刚开始学习C语言的人总是对这两个运算符感到困惑。 他们常常在一些简单的问题上犯错误,自己检查也发现不了。 看下面的代码:

如果(=123)…

很多新人都明白,等于123就这样吧。 其实这行代码的意思是先赋值=123,然后判断表达式是否为真值。 因为结果是123,是真值,所以执行以下操作。 如果你想在等于123时运行,你应该 if(==123)...

7 个条件运算符

条件运算符(?:)是C语言中唯一的三元运算符。 它对第一个表达式执行真/假测试,然后根据结果返回其他两个表达式之一。

运算中,首先测试第一个表达式,如果为真,则返回表达式2的值; 如果为 false,则返回表达式 3 的值。

例如:

8 逗号运算符

在C语言中,多个表达式可以用逗号分隔。 用逗号分隔的表达式的值是单独计算的,但整个表达式的值是最后一个表达式的值。

假设:

c语言运算符详解_c运算符含义_c语言运算符解释

对于第一行代码,有三个表达式,用逗号分隔,所以最终的值应该是最后一个表达式的值,即d+3,也就是8,所以a=8。 对于第二行代码,也有三个表达式。 此时的三个表达式分别是a2=++b,c--,d+3,(这是因为赋值运算符比逗号运算符的优先级更高)所以虽然最终表达式的值也是8,但是a2 =3。

需要更多学习笔记有用信息的朋友欢迎关注公众号【老九学院】(づ ̄3 ̄)づ╭❤~

标签: 运算 表达式 转换

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码