2009-06-18 5 views
1

my previous questionからフォローアップすると、なぜCShellはCと大きく異なるのですか? CShell 3 + 1 = 0 -なぜCで関連付けられている演算子はCShellで右結合ですか?

  • 4 - + 1 = 2 C.
  • 4 3。

+0

明らかに、cshは算術演算子の間にも空白を必要とします.Csh Programming Considered Harmful(http://www.faqs.org/faqs/unix-faq/shell/csh-whynot/) – bk1e

+0

( '/ bin/cshは'シンボリックリンクであることが多い)tcshでは、 '4 - 3 + 1'は' 2'と評価されます。 –

答えて

1

一般に、伝統的な表記法は、人間の論文では左から右(左結合)です。だから、(長いC、cshまたはコンピュータであっても任意の概念の前にこの表記を使用)は、ヒト用:

4 - 3 + 1 = (4 - 3) + 1 = 1 + 1 = 2 

なぜ?私は最高の答えは、だと思います。道路の左側または右側を走行する場合と同じです。誰もが同じものを使用している限りどちらの面が本当に問題ではありません。

IMHO直感的ではないので、cshは間違っています。おそらくこれは誤りであり(彼らは結び付いていたが間違ってコーディングしたかった)、すでにこれに依存している他のものと同じように遺産になるかもしれない。

0

さまざまな人々が製品を書いていて、計算をどのように処理するかについてさまざまな意見がありました。そして、Cシェルが2番目に書かれて以来、私は彼らが名詞的な親言語の主導に従わなかったことが間違っていると思う。

関連する問題