**CIGAL Reference Manual, Chapter 3 (Functions): ASSIGN** ===== ASSIGN -- ===== ** usage: variable = expression** The assignment operator '=' stores data into a variable. The target may not be a numerical constant or a quoted character string, but can be any variable type. EXPRESSION can be a constant, another variable, or an arithmetic expression. The type and size of the variables involved determine the number of values transferred during the assignment. The result of an assignment operation is the value that has been assigned. This means that (like in the C language) an assignment can be used as an operand in its own right, in another arithmetic operation. For example, the single command: rotate vecs a=3+b is the same as the 2 lines: a=3+b rotate vecs a or you could write: a = (b = (c = 0)) (In the last example the parentheses are needed to force evaluation from right to left.) Note: When an assignment is the first operator on a command line, the value of the operation is not printed, as would be the case for any other operator. This is done on the assumption that you don't really want to see the results of every assignment operation. Thus, the expressions A=3+B and 3+B are treated exactly the same when they appear as command arguments as in: scale vecs a=3+b and: scale vecs 3+b but they are treated somewhat differently when they stand alone, because the sum will be printed for: 3+b but not for: a=3+b **See Also:**\\ [[jvs:cigal:manual:chapter1:arithmetic|ARITHMETIC(1)]], [[jvs:cigal:manual:chapter1:variables|VARIABLES(1)]] [[jvs:cigal|CIGAL Home]], [[jvs:cigal:manual|CIGAL Manual]], [[jvs:cigal:manual:chapter3|Functions List]], [[jvs:cigal:manual:help|Manual Help]]