[Main]
Name=push_string
Type=Function
Subtype=ROM Call
Header Files=basfunc.h
Definition=void push_string (CESI expr);
MinAMS=1.01
See Also=push_str_to_expr, estack.h/push_zstr, estack.h/display_statements

[ROM Call]
Index=$326

[Description]
Executes TI-Basic 'string' function.

[Explanation]
push_string converts the expression pointed to by <I>expr</I> to a string and
pushes this string on the expression stack. For example, after executing the
code
<PRE>push_shortint (100);
push_quantum_pair (VAR_X_TAG, ADD_TAG);
push_string (top_estack);
</PRE>
the string <CODE>"x+100"</CODE> will be pushed on the expression stack.
See <A HREF="$$LINK(estack.h/top_estack)">top_estack</A>
and <A HREF="$$LINK(estack.h/Tags)">Tags</A> for more info about this example.
<BR><BR>
Of course, <I>expr</I> may point to a string containing a variable name, but
it must not point to an ordinary string. Otherwise the string is truncated
at the first space (but not after the 8th character). If you only want to
push a string (not an expression converted to a string), a method which
always works would be:
<PRE>push_expr_quantum (<I>expr</I>, STR_TAG);
</PRE>

[References]
In=push_median, push_part, bascmd.h/cmd_sorta, bascmd.h/cmd_sortd, unknown.h/push_format
Out=alloc.h/HeapFree, estack.h/check_estack_size, estack.h/Parse1DExpr, estack.h/push_quantum, estack.h/push_quantum_pair, estack.h/top_estack, mem.h/memmove, string.h/strlen
