相关疑难解决方法(0)

|之间有什么区别?和|| 还是运营商?

我一直||在OR表达式中使用(两个管道),包括C#和PHP.偶尔我会看到一个使用的管道:|.这两种用法有什么区别?当使用一个在另一个之上时是否有任何警告或者它们是否可以互换?

php c# operators

288
推荐指数
6
解决办法
12万
查看次数

一个明确的,外行的解释|之间的区别 和|| 在c#?

好的,所以我已多次阅读过这篇文章,但我还没有听到一种清晰,易懂(且令人难忘)的方法来了解它们之间的区别:

if (x | y)
Run Code Online (Sandbox Code Playgroud)

if (x || y)
Run Code Online (Sandbox Code Playgroud)

..在C#的背景下.任何人都可以帮助我学习这个基本事实,以及C#如何具体地对待它们(因为它们似乎做同样的事情).如果给定代码片段之间的差异是无关紧要的,我应该将其默认为最佳实践?

c# bitwise-operators logical-operators

45
推荐指数
5
解决办法
8384
查看次数

C#中的OR-ing字节给出了int

我有这个代码.

byte dup = 0;
Encoding.ASCII.GetString(new byte[] { (0x80 | dup) });
Run Code Online (Sandbox Code Playgroud)

当我尝试编译时,我得到:

无法将类型'int'隐式转换为'byte'.存在显式转换(您是否错过了演员?)

为什么会这样?不应该| 两个字节给出一个字节?以下两项工作,确保每个项目都是一个字节.

Encoding.ASCII.GetString(new byte[] { (dup) });
Encoding.ASCII.GetString(new byte[] { (0x80) });
Run Code Online (Sandbox Code Playgroud)

c# logic byte types bit-manipulation

4
推荐指数
2
解决办法
2531
查看次数

在C中,如果||的一侧,逻辑运算符结束 是真的?

在C中有以下内容:

return (abc(1) || abc(2));
Run Code Online (Sandbox Code Playgroud)

如果abc(1 == 1)返回true将调用abc(2)

c

1
推荐指数
2
解决办法
202
查看次数