Core Function Printf

From Sputnik Wiki
(Difference between revisions)
Jump to: navigation, search
(Created page with "<pre> SPrintf( <expression>, <expressions>... ) </pre> === Description === Create a formatted string. === expression === The format string and flags to use (see Remarks). ==...")
 
m (1 revision)
 
(25 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
<pre>
 
<pre>
SPrintf( <expression>, <expressions>... )
+
Printf( <format control>, <params> )
 
</pre>
 
</pre>
  
 
=== Description ===
 
=== Description ===
  
Create a formatted string.
+
Prints a formatted string (similar to the C printf() function).
  
=== expression ===
+
=== Parameters ===
  
The format string and flags to use (see Remarks).
+
==== format control ====
  
==== expressions ====
+
See [[Core Function SPrintf|SPrintf( <format control>, <params> )]] for format control.
  
Variables that will be output according to the "Format Control".
+
==== params ====
 +
 
 +
See [[Core Function SPrintf|SPrintf( <format control>, <params> )]] for params.
  
 
=== Return Value ===
 
=== Return Value ===
  
Success: Returns the formatted string.  
+
None.
 
+
Failure: Returns an empty string.
+
 
+
=== Format Control ===
+
 
+
==== Strings ====
+
 
+
There really isn’t any formatting within a string, beyond it’s alignment. Alignment works for any argument being printed.
+
 
+
Example:
+
 
+
<syntaxhighlight lang="sputnik">
+
Printf("->{0,10}<-\n", "Hello")
+
Printf("->{0,-10}<-\n", "Hello")
+
; Generates
+
; ->    Hello<-
+
; ->Hello    <-
+
</syntaxhighlight>
+
 
+
==== Numbers ====
+
 
+
Basic number formatting specifiers:
+
 
+
{| border="1" align="left" style="text-align:center;"
+
|Specifier
+
|Type
+
|Format
+
|Output with (double)1.42
+
|Output with (int)1337
+
|Output with (int)-12400
+
|-
+
|c
+
|Currency
+
|{0:c}
+
|$1.42
+
|$1,337
+
| -$12,400
+
|-
+
|d
+
|Decimal (Whole number)
+
|{0:d}
+
|
+
|1337
+
| -12400
+
|-
+
|e
+
|Scientific
+
|{0:e}
+
|1.420000e+000
+
|1.337000e+003
+
| -1.240000e+004
+
|-
+
|f
+
|Fixed point
+
|{0:f}
+
|1.42
+
|1337.00
+
| -12400.00
+
|-
+
|g
+
|General
+
|{0:g}
+
|1.42
+
|1337
+
| -12400
+
|-
+
|n
+
|Number with commas for thousands
+
|{0:n}
+
|1.42
+
|1,337
+
| -12,400
+
|-
+
|r
+
|Round trippable
+
|{0:r}
+
|1.42
+
|
+
|
+
|-
+
|x
+
|Hexadecimal
+
|{0:x4}
+
|1.42
+
|0539
+
|cf90
+
|}
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
  
 
=== Remarks ===
 
=== Remarks ===
  
Warning: If you expect to use int, byte, float etc in the params then you must cast it as such for example:
+
This is basically a wrapper for the [[Core Function SPrintf|SPrintf( <format control>, <params> )]] function so it will do exactly what that function does but print the result instantly and return no string.
 
+
<syntaxhighlight lang="sputnik">
+
$myint = 100
+
$val = SPrintf("Value is 0x'{0:x}'", (int)$myint) ; The (int) will only take in $myint
+
 
+
$myint = 100
+
$myint2 = 100
+
$val = SPrintf("Value is 0x'{0:x}'", (int)($myint + $myint2)) ; The (int) will now take in $myint AND $myint2
+
</syntaxhighlight>
+
Note how $myint was cast as an int? using (int)$myint this is vital since if you dont do that it might send a string or a float you never really know with $variables so its best to cast it.
+
 
+
There is an alternative method example:
+
 
+
<syntaxhighlight lang="sputnik">
+
$myint = 100
+
$val = SPrintf("Value is 0x'{0:x}'", int($myint))
+
</syntaxhighlight>
+
 
+
Its up to you to decide which one to use.
+
 
+
If you wish to capture the output of Printf to create strings:
+
 
+
Go see [[Core Function SPrintf|SPrintf( <expression>, <expressions>... )]] to Printf to strings.
+
  
Anything thats valid for Printf to print to console window is also valid for SPrintf to use to create strings.
+
See [[Core Function SPrintf|SPrintf( <format control>, <params> )]] for remarks.
  
 
=== Example ===
 
=== Example ===
  
<syntaxhighlight lang="sputnik">
+
See [[Core Function SPrintf|SPrintf( <format control>, <params> )]] for example.
Printf("Value is 0x'{0:x}'", (int)100) ; Prints 0x64 since the {0:x} is telling it to place param 0 as :x meaning hex
+
</syntaxhighlight>
+
  
 
[[Category:Core Function]]
 
[[Category:Core Function]]

Latest revision as of 12:38, 14 June 2015

Printf( <format control>, <params> )

Contents

Description

Prints a formatted string (similar to the C printf() function).

Parameters

format control

See SPrintf( <format control>, <params> ) for format control.

params

See SPrintf( <format control>, <params> ) for params.

Return Value

None.

Remarks

This is basically a wrapper for the SPrintf( <format control>, <params> ) function so it will do exactly what that function does but print the result instantly and return no string.

See SPrintf( <format control>, <params> ) for remarks.

Example

See SPrintf( <format control>, <params> ) for example.

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox