Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The printfn function prints to stdout using the given format, and adds a newline.
Namespace/Module Path: Microsoft.FSharp.Core.ExtraTopLevelOperators
Assembly: FSharp.Core (in FSharp.Core.dll)
// Signature:
printfn : TextWriterFormat<'T> -> 'T
// Usage:
printfn format
Parameters
- format
Type: TextWriterFormat<'T>
Remarks
This function is named PrintFormatLine in compiled assemblies. If you are accessing the function from a language other than F#, or through reflection, use this name.
Example
The following code example demonstrates the use of printfn with various format specifiers. For more information on format specifiers, see Printf Module.
let isDone = false
printfn "Printing Boolean values: %b %b" isDone (not isDone)
let s1,s2 = "test1", @"C:\test2"
printfn "Printing strings (note literal printing of string with special character): %s%s" s1 s2
let i1, i2 = -123, 1891
printfn "Printing an integer in decimal form, with and without a width: %d %10d" i1 i2
printfn "Printing an integer in lowercase hexadecimal: %x or 0x%x" i1 i2
printfn "Printing as an unsigned integer: %u %u" i1 i2
printfn "Printing an integer as uppercase hexadecimal: %X or 0x%X" i1 i2
printfn "Printing as an octal integer: %o %o" i1 i2
printfn "Printing in columns."
for i in 115 .. 59 .. 1000 do
printfn "%10d%10d%10d%10d%10d" (10100015-i) (i-100) (115+i) (99992/i) (i-8388229)
let x1, x2 = 3.141592654, 6.022E23
printfn "Printing floating point numbers %e %e" x1 x2
printfn "Printing floating point numbers %E %E" x1 x2
printfn "Printing floating point numbers %f %f" x1 x2
printfn "Printing floating point numbers %F %F" x1 x2
printfn "Printing floating point numbers %g %G" x1 x2
printfn "Using the width and precision modifiers: %10.5e %10.3e" x1 x2
printfn "Using the flags:\nZero Pad:|%010d| Plus:|%+10d |LeftJustify:|%-10d| SpacePad:|% d|" 1001 1001 1001 1001
printfn "zero pad | |+- both | |- and ' ' | |' ' and 0 | | normal "
for i in -115 .. 17 .. 100 do
printfn "|%010d| |%+-10d| |%- 10d| |% 010d| |%10d|" (80-i) (i+85) (100+i) (99992/i) (i-80)
let d = 0.124M
printfn "Decimal: %M" d
printfn "Print as object: %O %O %O %O" 12 1.1 "test" (fun x -> x + 1)
printfn "%A" [| 1; 2; 3 |]
printfn "Printing from a function (no args): %t" (fun writer -> writer.WriteLine("X"))
printfn "Printing from a function with arg: %a" (fun writer (value:int) -> writer.WriteLine("Printing {0}.", value)) 10
Printing Boolean values: false true Printing strings (note literal printing of string with special character): test1C:\test2 Printing an integer in decimal form, with and without a width: -123 1891 Printing an integer in lowercase hexadecimal: ffffff85 or 0x763 Printing as an unsigned integer: 4294967173 1891 Printing an integer as uppercase hexadecimal: FFFFFF85 or 0x763 Printing as an octal integer: 37777777605 3543 Printing in columns. 10099900 15 230 869 -8388114 10099841 74 289 574 -8388055 10099782 133 348 429 -8387996 10099723 192 407 342 -8387937 10099664 251 466 284 -8387878 10099605 310 525 243 -8387819 10099546 369 584 213 -8387760 10099487 428 643 189 -8387701 10099428 487 702 170 -8387642 10099369 546 761 154 -8387583 10099310 605 820 141 -8387524 10099251 664 879 130 -8387465 10099192 723 938 121 -8387406 10099133 782 997 113 -8387347 10099074 841 1056 106 -8387288 10099015 900 1115 99 -8387229 Printing floating point numbers 3.141593e+000 6.022000e+023 Printing floating point numbers 3.141593E+000 6.022000E+023 Printing floating point numbers 3.141593 602200000000000000000000.000000 Printing floating point numbers 3.141593 602200000000000000000000.000000 Printing floating point numbers 3.14159 6.022E+23 Using the width and precision modifiers: 3.14159e+000 6.022e+023 Using the flags: Zero Pad:|0000001001| Plus:| +1001 |LeftJustify:|1001 | SpacePad:| 1001| zero pad | |+- both | |- and ' ' | |' ' and 0 | | normal |0000000195| |-30 | |-15 | |-000000869| | -195| |0000000178| |-13 | | 2 | |-000001020| | -178| |0000000161| |+4 | | 19 | |-000001234| | -161| |0000000144| |+21 | | 36 | |-000001562| | -144| |0000000127| |+38 | | 53 | |-000002127| | -127| |0000000110| |+55 | | 70 | |-000003333| | -110| |0000000093| |+72 | | 87 | |-000007691| | -93| |0000000076| |+89 | | 104 | | 000024998| | -76| |0000000059| |+106 | | 121 | | 000004761| | -59| |0000000042| |+123 | | 138 | | 000002631| | -42| |0000000025| |+140 | | 155 | | 000001818| | -25| |0000000008| |+157 | | 172 | | 000001388| | -8| |-000000009| |+174 | | 189 | | 000001123| | 9| Decimal: 0.124 Print as object: 12 1.1 test FSI_0006+clo@159-44 [|1; 2; 3|] Printing from a function (no args): X Printing from a function with arg: Printing 10.
Platforms
Windows 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2
Version Information
F# Runtime
Supported in: 2.0, 4.0
Silverlight
Supported in: 3