=
Prev | Orchestra Opcodes and Operators | Next

## =

= — Performs a simple assignment.

## Syntax

    ares = xarg

    ires = iarg

    kres = karg

    ires, ... = iarg, ...

    kres, ... = karg, ...

    table [ kval] = karg

## Description

Performs a simple assignment.

## Initialization

= (simple assignment) - Put the value of the expression iarg (karg, xarg) into the named result. This provides a means of saving an evaluated result for later use.

From version 5.13 onwards the i- and k-rate versions of assignment can take a number of outputs, and an equal or less number of inputs. If there are less the last value is repeated as necessary.

From version 5.14 values can be assigned to elements of a vector with the square bracket form.

## Examples

Here is an example of the assign opcode. It uses the file assign.csd.

Example 30. Example of the assign opcode.

See the sections Real-time Audio and Command Line Flags for more information on using command line flags.

    <CsoundSynthesizer>
    <CsOptions>
    ; Select audio/midi flags here according to platform
    -odac     ;;;RT audio out
    ;-iadc    ;;;uncomment -iadc if RT audio input is needed too
    ; For Non-realtime ouput leave only the line below:
    ; -o assign.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

    sr = 44100
    ksmps = 32
    nchnls = 2

    instr 1
      ; Assign a value to the variable i1.
      i1 = 1234

      ; Print the value of the i1 variable.
      print i1
    endin

    </CsInstruments>
    <CsScore>

    ; Play Instrument #1 for one second.
    i 1 0 1
    e

    </CsScore>
    </CsoundSynthesizer>

Its output should include a line like this:

    instr 1:  i1 = 1234.000

## See Also

divz, init, passign, tival

## Credits

Example written by Kevin Conder.

The extension to multiple values is by

Author: John ffitch
University of Bath, and Codemist Ltd.
Bath, UK
February 2010

New in version 5.13

Prev | Up | Next
/ | Home | +=