A > = b is to judge whether an is equal to b or whether an is greater than b first?

in other words,
a > = b
equals
astatb | | a > b
or
a > b | | astatableb?


< H2 > Update: < / H2 >
if it is equal to this, the program will be slower. I think it should be equal to a = = b | | a > b.

That's not true. Your platform will not split > = into = and > . The implementation varies from platform to platform and compiler to compiler. From Assembly ( https://godbolt.org/g/6MCvQq):

if (a >= b)

= >

  mov eax, dword ptr [rbp - 12]
  cmp eax, dword ptr [rbp - 16]
  jl .LBB0_4
< hr >
   if (a > b)

= >

   cmp r8d, dword ptr [rbp - 16]
   mov dword ptr [rbp - 20], eax -sharp 4-byte Spill
   jle .LBB0_2

Both have 3 instructions.

Also take a look at these awesome answers: https://stackoverflow.com/que.

< hr >

Both are true. | | is logic or operator in some languages (which belongs to logic operators). I assume you have limited the symbols to cPP (because you didn't use the more general terms like logic or and logic and . In standard ml, logic or is expressed as or , same for logic and )

In cPP, please correct = to = . The former is a Direct assignment operator, while the latter is Equal to operator. If a satisfy the condition, the b will not be used. For example:

if (a && b)

is equal to

if (a)
    if(b)
        ...
        

BTW, in some algorithms, if you want to judge if a node exists (like arr [x] [y] = ='x' ), it should be put in b rather than a . Because sometimes a is used to filter out-of-range conditions.


are all right, |


a > b | a = = b equivalent to a = b | a > b , | is true.


a > b || a == b

a > b | | a = b, a = = b | | a > b, both of them are the same


Why do I think there is no difference between them

Menu