hrefspace

 找回密码
 立即注册
搜索
热搜: PHP PS 程序设计
查看: 4884|回复: 0

C语言中的逻辑运算

[复制链接]

604

主题

616

帖子

1951

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1951
发表于 2023-5-9 18:17:29 | 显示全部楼层 |阅读模式
C语言提供了一组逻辑运算符||、&&、和!,分别对应于命题逻辑中的OR、AND和NOT运算。逻辑运算很容易和位级运算相混淆,但是它们的功能是完全不同的。逻辑运算认为所有非零的参数都表示TRUE,而参数0表示FALSE。它们返回1或者0,分别表示结果为TRUE或者为FALSE。
按位运算只有在特殊情况下,也就是参数被限制为0或者1时,才和与其对应的逻辑运算有相同的行为。
逻辑运算符&&和||与它们对应的位级运算&和|之间的第二个重要的区别是,如果对第一个参数求值就能确定表达式的结果,那么逻辑运算符就不会对第二个参数求值。因此,例如,表达式a&&5/a将不会造成被零除,而表达式p&&*p++也不会导致间接引用空指针。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|hrefspace

GMT+8, 2024-11-24 05:16 , Processed in 0.055019 second(s), 21 queries .

Powered by hrefspace X3.4 Licensed

Copyright © 2022, hrefspace.

快速回复 返回顶部 返回列表