Difference between revisions of "printf"
m |
m |
||
Line 24: | Line 24: | ||
== Parameter specification== |
== Parameter specification== |
||
− | === Type specification === |
||
===Type field=== |
===Type field=== |
||
The Type field can be any of: |
The Type field can be any of: |
||
Line 42: | Line 41: | ||
|- |
|- |
||
| <code>f</code>, <code>F</code> |
| <code>f</code>, <code>F</code> |
||
+ | |<code>double</code> in normal (fixed-point) notation. |
||
− | |<code>double</code> in normal ([[Fixed-point arithmetic|fixed-point]]) notation. <code>f</code> and <code>F</code> only differs in how the strings for an infinite number or NaN are printed (<code>inf</code>, <code>infinity</code> and <code>nan</code> for <code>f</code>; <code>INF</code>, <code>INFINITY</code> and <code>NAN</code> for <code>F</code>). |
||
|- |
|- |
||
| <code>x</code>, <code>X</code> |
| <code>x</code>, <code>X</code> |
Revision as of 20:09, 6 July 2019
"printf" is a function in the C-standard library that outputs text to standard output. Standard output is typically the terminal or debug console, depending on the system the program is running on. The f stands for formatted, allowing the function to output not just fixed strings, but also text with variable data in it.
Hello world
The simplest of all C-programs is known as "Hello world" program. It outputs "Hello world", using printf.
#include <stdio.h>
int main(void) {
printf("Hello world!\n");
return 0;
}
Using parameters
Parameters need to be specified in the format string. A parameter definition starts with a % character. A simple example with one numerical parameter looks as below:
printf("Total sum is: %d\n", Sum);
Parameter specification
Type field
The Type field can be any of:
Character Description %
Prints a literal %
character (this type doesn't accept any flags, width, precision, length fields).d
,i
int
as a signed decimal number.%d
and%i
are synonymous for output, but are different when used withscanf()
for input (where using%i
will interpret a number as hexadecimal if it's preceded by0x
, and octal if it's preceded by0
.)u
Print decimal unsigned int
.f
,F
double
in normal (fixed-point) notation.x
,X
unsigned int
as a hexadecimal number.x
uses lower-case letters andX
uses upper-case.s
null-terminated string. c
char
(character).