#!/bin/csh
@ cows = 4 - 3 + 1
echo $cows
当我期望“2”时,这个简单的 csh 脚本在运行时会产生“0”作为输出。
~root: csh simple.1
0
我看了一堆,我唯一能想到的是“-”被解读为一元否定而不是减法,因此改变了运算符的优先级并以 4 - 4 而不是 2 + 1 结束。这是正确的?如果是这样,有什么理由吗?如果没有...帮助!
编辑:所以他们是正确的联想!这些运算符在 C 中不是右结合的,是吗?C-Shell 与 C 有什么不同吗?