【发布时间】:2014-03-05 20:44:38
【问题描述】:
C 和 unix shell 中的这些运算符有什么区别?在 C 中,&& 是否意味着第一个过程,如果它是真的,第二个过程?在 unix shell 中会有什么不同?谢谢
编辑我不是指 && 和 || 之间的区别,而是它们在 c 语言和 unix shell 中的区别。
【问题讨论】:
-
除了@chepner 描述的优先级差异之外,
&&和||在两种语言中都是短路求值运算符。人们不使用&&来围绕在C 中为副作用而执行的操作进行流程控制,这是一个约定问题,而不是语言差异问题;如果你愿意,你可以在 C 语言中那样使用它们,人们只会奇怪地看着你(如果他们有任何好的风格感,就会拒绝你的补丁)。 -
...重点是它们并不像这个问题所假设的那样不同。