C中'=='的含义是什么?

Kra*_*ken 6 c syntax

它的含义是什么?==它与它有什么不同=

我怎么知道使用哪一个?

pax*_*blo 21

==是对平等的考验.=是一项任务.

任何好的C书都应该涵盖这一点(在我想象的书的早期).

例如:

int i = 3;                       // sets i to 3.
if (i == 3) printf("i is 3\n");  // prints it.
Run Code Online (Sandbox Code Playgroud)

请注意令人发指的:

if (i = 4) { }
Run Code Online (Sandbox Code Playgroud)

这是有效的C并经常抓住人.这实际上变量赋值 4 i并将其用作if语句中的真值.这导致很多人使用丑陋但更安全:

if (4 == i) {}
Run Code Online (Sandbox Code Playgroud)

如果你不小心使用=而不是,那么这==是一个编译时错误,而不是在你的程序运行时会在你的背后咬你的东西:-)

逻辑或运算符是两个垂直条形字符,一个接一个,而不是单个字符.这里列出了一个逻辑和变量,称为b4:

||
&&
b4
Run Code Online (Sandbox Code Playgroud)

没有魔法.


ken*_*ytm 11

a == b如果ab相等则是一个测试.

a = b被称为赋值,这意味着将变量a设置为与b具有相同的值.

(您在美国键盘布局中|使用Shift- 键入\.)


Sam*_*der 5

== tests equality =赋值

两者都与||无关