Print Fmt Strs
<fmt_arg> := %[-][0][<width>][.<decimals>][<flags>][h<aux_fmt_num>]<fmt_code>
See StrPrintJoin().
<flags>:
't' truncate to <width>.
',' add commas every three digits or four nibbles.
'$' makes %Q convert '$' to "\x24".
'/' makes %Q and %q convert '%' to "%%".
<aux_fmt_num>:
For "%n", "%d" or "%u", the <aux_fmt_num> causes thousands mode. "%h?n" will
pick a var exponent multiples of three unit, while "%h-3n" will display milli
units or "%h6n" will display mega units. The 'k' flag is always on for "%n".
See ::/Demo/Print.HC.
For "%c" or "%C", the <aux_fmt_num> repeats the char that many times.
<fmt_code>:
"%n" floating point in engineering notation, exponents being multiples of
three. If it has a <aux_fmt> code, it will display scientific units letters.
"%S" Define() entry.
"%C" ToUpper() character.
"%h25c",'\n'; 25 new-lines.
"%h*c",25,'\n'; 25 new-lines.
"%F" text file by filename.
"%$F" DolDoc file in memory.
"%p" ptr.
"%,p" ptr with no offset.
"%P" link to ptr.
"%,P" link to ptr with no offset.
"%D" date. Pass a CDate.
"%T" time. Pass a CDate.
"%z" sub_entry of an enumerated list of text entries. See LstSub(). Pass
sub_entry_num first, list second.
"%Z" DefineLstLoad() subentry. Pass sub_entry_num first, define_name second.
"%Q" convert "\" to "\\" and quote to backslash quote. (For use in creating
strs in strs.)
"%q" rev a "%Q".
Print Family
MStrPrint(U8 *fmt,...) is like StrPrint(U8 *dst,U8 *fmt,...) but it returns a
MAllocated str. It is vary handy because you don't have to worry about
overflow.
CatPrint(U8 *_dst,U8 *fmt,...) concatenates a formated string.
In(U8 *fmt,...) sends text to the current task's input buffer.
InStr(U8 *fmt,...) sends text of an InFile to the keyboard stream of the current
TASK but can also do mouse cmds.
XTalk(CTask *task,U8 *fmt,...) and text to another task's input buffer.
XTalkStr(CTask *task,U8 *fmt,...) sends text of an InFile to the keyboard stream
of another TASK but can also do mouse cmds.
DocPrint(CDoc *doc,U8 *fmt,...) sends text to a document. You can buffer to a
Doc and save it, providing the functionality of fprintf. See
::/Demo/Dsk/FPrintF.HC.
Adam(U8 *fmt,...) sends text to the Adam Task to be compiled and run.
AdamLog(U8 *fmt,...) and AdamErr(U8 *fmt,...) send text to the Adam Task to be
displayed.
StreamPrint(U8 *fmt,...) sends text to the stream of code being compiled and
must reside in a #exe{} blk.
GrPrint(CDC *dc,I64 x,I64 y,U8 *fmt,...) and GrVPrint() plots text in graphics
mode.
TextPrint(CTask *task,I64 x,I64 y,I64 attr,U8 *fmt,...) plots to gr.text_base.
ExePrint(U8 *fmt,...) compiles and execute a string. Note: It returns the res
of the last executed expression.
Once(U8 *fmt,...) Writes User code to Registry to be executed next boot.
AOnce(U8 *fmt,...) Writes Adam code to Registry to be executed next boot.
InPrint(I64 mS,U8 *fmt,...) PutChars()s one at a time with a delay.
RawPrint(I64 mS,U8 *fmt,...) sends direct to scrn memory, bypassing window
manager.
User(U8 *fmt,...) Spawns a user and execute a string on start-up.
PopUpPrint(U8 *fmt,...) compiles and execute a string in a pop-up win. Note: It
returns the res of the last executed expression.
PopUpViewPrint(U8 *fmt,...) creates a pop-up window and views text.
Use Print("%s",src) if you need an unmodified string.