Liberty BASIC Help Online

EVAL$( code$ )
 
Description:
Liberty BASIC now has two functions for evaluating BASIC code inside a running program.  The eval() function evaluates the code and returns a numeric value, and the eval$() function works the same way but returns a string value.  Both will execute the very same code, but the string function converts the result to a string if it isn't already one, and the numeric version of the function converts it to numeric values.
Evaluating to a string
Here we show how to evaluate code to a string, and what happens if you try to evaluate it to be a number.
    'Let's evaluate some code that produces a non-numeric result
    a$(0) = "zero"
    a$(1) = "one"
    a$(2) = "two"
    code$ = "a$(int("+str$(rnd(1))+"*3))"
    print "We will evaluate the code: "; code$
    result$ = eval$(code$)
    print result$
 
    'Now let's use the eval function, which effectively does a
    'val() to the result of the calculation.  Converting a non
    'numeric string to a numeric value results in zero.
    result = eval(code$)
    print result
 
Evaluating to a number
Here's an example of the most common type of code evaluation users will want to do: Numeric computation.  Let's just make a short example that asks you to type an expression to evaluate.
    'ask for an expression
    input "Type a numeric expression>"; code$
    answer = eval(code$)
    print answer
 


Copyright (C) 2003 Shoptalk Systems
Liberty BASIC - http://www.libertybasic.com/