[Coco] Sharing a value with the calling routine in Basic09

Wayne Campbell asa.rand at gmail.com
Sat Aug 15 14:49:10 EDT 2020


Pass by reference is the default. This means that just passing the variable
name is enough. If you update that variable and the procedure you called
the variable in the procedure that called it will reflect that change. To
pass by value, you use the variable name plus zero in the parameter list.

Example:

RUN myProc(myVar+0)

Passes myVar by it's value.

RUN myProc(myVar)

Passes myVar by reference.


On Sat, Aug 15, 2020, 11:21 AM <coco at jechar.ca> wrote:

>
> On 2020-08-15 14:17, coco at jechar.ca wrote:
> > Would like to know if there is a standard way to pass back the
> > value from a called routine to the caller. Cannot use GOSUB the
> > routines need to be separate modules although a merged module file
> > could be created by OS9 afterwards to make sure that if one module
> > is loaded the other is too.
> >
> > I have an Idea involving ADDR PEEK and POKE of course if I am wrong
> > this could go very wrong.
> >
> > Charlie
>
> PS: I think what I am trying to do is called pass by reference
> in C++
>
> --
> Coco mailing list
> Coco at maltedmedia.com
> https://pairlist5.pair.net/mailman/listinfo/coco
>


More information about the Coco mailing list