微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > STM中&,&&,|,II意思

STM中&,&&,|,II意思

时间:10-02 整理:3721RD 点击:

各位,我最近在自学STM32,在看固件库的时候,发现了个问题。就是在图片里面的固件库所示,例子里面的and,程序用的是|,不是应该用&&么?还有别的地方也有用“|”的这是表示或么,或不应该是“||”么?网上说“|”是按位或,可是例子里面不应该是按位或的意思呀。

固件库中|


4楼的,这是分享吗,看都不看就回复。
在设置中,“|”代表是同时,两个管脚的配置是一样的。
当“|”在两个操作数之间时,代表按位或;“||”是逻辑或,表明任何一个判断是真,整个表达式的值就是真。

是要用或 | 哦,他的and意思是说PIN10 和PIN15同时置1。
Gpio_Pin_10 | Gpio_Pin_15,把第10和15位同时置1.

请教一下,怎么有时候或是“|”,有时候是“||”呢?

好东西啊
谢谢分享

&时变量的按位与,&&是逻辑值的与,也就是只存在真和假;
同理 | 是按位或, || 是逻辑或。
如果回答你还满意,别忘了给分哟

这里不能单独理解为“与”和“或”的关系,你要看看函数内部是怎么写的,就会明白点了!

符号"||"是逻辑或操作,直接把两个值进行或操作,只要有一个值为真,结果就为真。
符号"|"是按位或操作,把两个值按2进制展开,按位或。
比如 0000 1010 | 0000 0101 = 0000 1111 相当于 0x0A | 0x05 = 0x0F;

这不是C语言的基础么?如果小编还没学C语言的话,可以先去看看C语言,打下基础

谢谢大佬的分享

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top