#!/bin/csh
@ cows = 4 - 3 + 1
echo $cows
Ce simple script csh lors de l'exécution produit "0" pour la sortie lorsque je m'attendais à "2".Dans csh, pourquoi 4 - 3 + 1 == 0?
~root: csh simple.1
0
Je l'ai fait un tas de recherche et la seule chose que je pouvais penser était que le « - » a été lu comme une négation unaire plutôt que la soustraction, donc changer la priorité de l'opérateur et de se retrouver avec 4 - 4 plutôt que 2 + 1. Est-ce correct? Si oui, pourquoi? Si non ... aidez!
Edit: Donc, ils ont raison associative! Ces opérateurs ne sont pas associatifs en C, n'est-ce pas? Est-ce que C-Shell est différent de C?
Voici une meilleure question ... pourquoi ne arbres parse csh droit associatif et non à gauche? –
... et une meilleure question. Pourquoi utiliser csh? –
Je ne l'utilisais pas réellement. C'était une question à laquelle j'essayais de répondre pour un ami. Voici la nouvelle discussion: http://stackoverflow.com/questions/1010119/ – Instantsoup