C语言中到底是非0表示真,还是1表示真?

news2024/11/25 21:29:48

我是荔园微风,作为一名在IT界整整25年的老兵,今天我们来重点说一说C语言中到底是非0表示真,还是1表示真?这就是说到C语言中的两个常见运算形式,即关系运算符和逻辑运算符。

为照顾急性子的同学,先直接说结论:

关系运算符和逻辑运算符用“真”和“假”表示运算的结果,非0的值在关系运算中被视为“真”,0表示“假”。逻辑运算的结果用整型数据1表示“真”,用整型数据0表示“假”。

下面详细来看,

一、关系运算

1.关系运算符

每个关系运算符对它左侧值和右侧值进行比较大小的运算

2.关系表达式

用关系运算符连接起来的式子。若关系为真,关系表达式的值为1;若关系为假,关系表达式的值为0;

3.优先级

关系运算符优先级低于算术运算符,高于赋值运算符。

下表显示了 C 语言支持的所有关系运算符。假设变量 A 的值为 1,变量 B 的值为 2,则:

二、逻辑运算

1.逻辑运算符

逻辑运算符的运算对象通常是关系表达式。

&& 逻辑与 两边运算量都为1时,结果为真

|| 逻辑或 两边运算量都为0时,结果为假,否则为真

! 逻辑非 使操作数的值0变1,1变0

说明:

&& 和||是‚双目运算符,要求有两个操作数。! 是单目运算符,只要求有一个操作数。

2.逻辑表达式

用逻辑运算符将关系表达式或逻辑量连接起来的式子。

a&&b a、b均为1, 则a&&b为1

a||b a、b之一为1,则a||b为1

!a 若a为真,则!a为假

3.优先级

!运算符优先级高于算术运算符,与自增自减运算符同级。

&&运算符优先级高于||,两者的优先级都低于关系运算符,高于赋值运算符。

下表显示了 C 语言支持的所有逻辑运算符。假设变量 A 的值为 1,变量 B 的值为 0,则:

作者简介:荔园微风,1981年生,高级工程师,浙大工学硕士,软件工程项目主管,做过程序员、软件设计师、系统架构师,早期的Windows程序员,Visual Studio忠实用户,C/C++使用者,是一位在计算机界学习、拼搏、奋斗了25年的老将,经历了UNIX时代、桌面WIN32时代、Web应用时代、云计算时代、手机安卓时代、大数据时代、ICT时代、AI深度学习时代、智能机器时代,我不知道未来还会有什么时代,只记得这一路走来,充满着艰辛与收获,愿同大家一起走下去,充满希望的走下去。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/365218.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【概念辨析】数组指针指针数组

目录 一、数组指针 二、指针数组 三、 数组指针的数组名不是二级指针 再来说最关键的:数组指针为什么不是二级指针呢? 代码如下: 四、指针数组的数组名是二级指针 在复习,在考试,在焦虑。 又一次学习到了数组指针和指针…

MybatisPlus的注意点

userService是基础于ServiceImpl 而servicfeImpl中要传入一个继承于BaseMapper的类和一个实体类 这个继承于BaseMapper的类就是我们的userMapper,所以userMapper要集成BaseMapper 重点来了, UserService中的我们去调用Impl实现类的saveOrUpdate方法&am…

神经网络中超参数调节和优化技巧、优化算法的分类介绍

目录什么是卷积神经网络超参数的调整学习率迭代次数批次大小激活函数隐含层的数目和单元数权重初始化Dropout方法网格搜索和随机搜索神经网络优化算法介绍优化算法分类一阶优化梯度下降算法二阶优化梯度下降算法随机梯度下降(SDG)小批量梯度下降进一步优化梯度下降算法动量方法…

Could not connect to Redis at 127.0.0.1:6379: 由于目标计算机积极拒绝,无法连接。(极简解决办法)

一、遇到问题。 在需要启动Redis客户端的时候,会发现会报这个错误。报这个错误的原因就是Redis的服务端没有开启,那Redis的客户端是访问不了的 二、解决办法。 1.解决的办法就是要启动服务端,让这个客户端可以访问到。启动服务端最简单不会…

秒懂算法 | 基于朴素贝叶斯算法的垃圾信息的识别

本文将带领大家亲手实现一个垃圾信息过滤的算法。 在正式讲解算法之前,最重要的是对整个任务有一个全面的认识,包括算法的输入和输出、可能会用到的技术,以及技术大致的流程。 本任务的目标是去识别一条短信是否为垃圾信息,即输入为一条文本信息,输出为二分类的分类结果。…

百度AI人脸比对

文章目录一、百度智能云1、注册登录2、创建应用3、完成认证领取免费测试资源二、springboot集成1、pom2、配置application.yml3、官方文档三、逻辑分析四、代码1、图片上传2、格式转换3、百度Token获取4、工具类5、实体类6、AI人脸验证7、AI人脸比对8、controller接口一、百度智…

LeetCode010之正则表达式匹配(相关话题:动态规划)

题目描述 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 . 和 * 的正则表达式匹配。 . 匹配任意单个字符* 匹配零个或多个前面的那一个元素 所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。 示例 1: 输入&…

vue-print-nb使用

下载 pnpm add vue-print-nb --save 全局注册&#xff0c;使用插件的注册方式 或 局部注册自定义指令 import print from vue-print-nb directives: {print } 绑定到点击按钮上 <button v-print"content">Print!</button> 设置配置项-常用 id和popTi…

集群演变( Redis 案例)

文章目录集群演变单节点主从模式哨兵模式Redis Cluster 集群本文浅谈一下集群的发展&#xff0c;用 Redis 做例案例集群演变 集群演变思路 #mermaid-svg-lOtU0w7tegcH7NSB {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermai…

到底是谁还不会写学生管理系统?今天用python来制作一个

前言 咳咳&#xff0c; 想知道还有多少宝子&#xff0c;还在忙毕业设计的事情 准备的怎么样呢&#xff1f; 有些宝子 学python学这么久&#xff0c;还不会自己写出来个学生管理系统 唉&#xff0c;能怎么办呢&#xff0c;我来分享给你们看看呗 完整 代码 点击 领取 即可 话不…

VLAN配置

Vlan的作用 vlan&#xff08;Virtual Local Area Network&#xff09;虚拟局域网 VLAN最大的好处是可以隔离冲突域和广播域 当一个局域网内广播次数过多会影响网络性能 企业越来越大&#xff0c;网络需求发生了变化&#xff0c;内容的终端也成倍增加&#xff0c;流量也增大…

Kotlin 35. Android Gradle 介绍

一起来学Kotlin&#xff1a;概念&#xff1a;22. Android Gradle 介绍 当我们刚开始进行安卓开发的时候&#xff0c;没有人关注 Gradle。我们主要专注于编写 Kotlin 代码和尽可能美观的 Android 应用程序。但随着时间的变化&#xff0c;我自己对 Gradle 感到越来越好奇。到底什…

界面组件Kendo UI for Angular——让网格数据信息显示更全面

Kendo UI致力于新的开发&#xff0c;来满足不断变化的需求&#xff0c;通过React框架的Kendo UI JavaScript封装来支持React Javascript框架。Kendo UI for Angular是专用于Angular开发的专业级Angular组件&#xff0c;telerik致力于提供纯粹的高性能Angular UI组件&#xff0c…

优秀的项目经理需要具备哪些品质呢?

要把项目的任务计划性地分配给各个负责人 1、要明确项目都有负责人&#xff0c;而且许多任务负责人有可能不止一个。用A代表负责人&#xff0c;B代表助手。每项任务都要有一个团队内部的负责人。 2、什么人承担什么责任都需由团队成员共同商讨来决定&#xff0c;这时候就需要…

大规模 IoT 边缘容器集群管理的几种架构-4-Kubeedge

前文回顾 大规模 IoT 边缘容器集群管理的几种架构-0-边缘容器及架构简介大规模 IoT 边缘容器集群管理的几种架构-1-RancherK3s大规模 IoT 边缘容器集群管理的几种架构-2-HashiCorp 解决方案 Nomad大规模 IoT 边缘容器集群管理的几种架构-3-Portainer &#x1f4da;️Reference…

C进阶:6.C语言文件操作

目录 1.为什么使用文件 2.什么是文件 2.1程序文件 2.2数据文件 2.3文件名 3.文件的打开和关闭 3.1文件指针 4.文件的顺序读写 fputc()写入文件 fgetc()从文件中读取 fgets()读取一段字符串 fprintf格式化写入文件、fscanf格式化读出文件 4.1对比一组函数 5.文件…

stm32f103封装 入门教学(一)LED程序CubeMX

本文代码使用 HAL 库。 文章目录前言一、LED 原理图二、CubeMX创建工程三、LED 相关函数1. 输出电平函数&#xff1a;2. 延时函数&#xff1a;3. 翻转电平函数&#xff1a;四、详细代码实验现象 &#xff1a;总结代码 源码&#xff1a;前言 从这篇文章开始&#xff0c;我们讲解…

Springboot 为了偷懒,我封装了一个自适配的数据单位转换工具类

前言 平时做一些统计数据&#xff0c;经常从数据库或者是从接口获取出来的数据&#xff0c;单位是跟业务需求不一致的。 比如&#xff0c; 我们拿出来的 分&#xff0c; 实际上要是元 又比如&#xff0c;我们拿到的数据需要 乘以100 返回给前端做 百分比展示 又比如&#xff…

如何通俗地理解原码、反码和补码

进制是什么&#xff1f;进制是人为设计的一套带进制计数方法&#xff0c;比如日常使用的十进制&#xff0c;就是0-9这10个数字&#xff0c;每逢十就会向高位进一。因为人类只有十根手指&#xff0c;所以天生地就会想到使用十进制--数到10发现手指头不够用了&#xff0c;就只能进…

JVM20浅堆深堆与内存泄露

浅堆深堆与内存泄露 1. 浅堆&#xff08;Shallow Heap&#xff09; 浅堆是指一个对象所消耗的内存。在 32 位系统中&#xff0c;一个对象引用会占据 4 个字节&#xff0c;一个 int 类型会占据 4 个字节&#xff0c;long 型变量会占据 8 个字节&#xff0c;每个对象头需要占用…