Open In App

C++ printf() Function

Last Updated : 26 Nov, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

printf() function is originally declared under the <cstdio>header file. It prints the formatted string to the standard output stdout.

Syntax: 

int printf(const char*word, .......)

Parameters:

  • word: represents the string that needs to be printed on the standard output stdout,
  • ……. : represents any no of extra parameters that can be passed to it.

Return Type: It returns the total number of characters written.

Example:

C++




// C++ Program to demonstrate
// use of printf()
#include <iostream>
using namespace std;
 
int main()
{
 
    char a[] = "geeksforgeeks";
    printf("The total no of characters returned by "
           "printf() is %d",
           printf("%s", a));
    return 0;
}


Output

geeksforgeeksThe total no of characters returned by printf() is 13

To know more about the return type of print() refer to return type of print() and scanf().

Example: 

C++




// C++ Program to implement
// use of % with printf()
#include <iostream>
using namespace std;
 
int main()
{
 
    int a = 5;
    printf("%d", a);
}


Output

5

Note: Anything present with the ‘%’ symbol inside printf() is termed a Format Specifiers.

Components of a Format Specifier:

  • A ‘%’ sign
  • width – It is an optional field that determines the width field
  • Precision
  • Length
  • Specifier
  • Flags

Flags:

It is responsible for conversion behavior between two fields. It can be classified into: 

  • :  Left Justifies the answer.
  • + : attached as a sign to the beginning of the result.
  • space : By default, if nothing is present space is attached to the result.
  • # : alternative form of conversion
  • 0 : used to pad numbers mostly trailing zeroes in integer or floating-point numbers.

Format Specifiers:

Format Specifiers are used for taking inputs and printing the output of a type.

Specifier Output Example
d or i Signed decimal integer 360
u Unsigned decimal integer 7200
o Unsigned octal 555
x Unsigned hexadecimal integer 7fb
e Mantissa/Exponent notation 4.567e+8
c Character k
s string of characters geeks
% Prints the % sign to the output screen  

Note:

.x f denotes the precision of float variables up to  x decimal places

Example 1:

C++




// C++ Program to
#include <bits/stdc++.h>
using namespace std;
 
int main() {
 
   char course[]="geeksforgeeks";
  printf("Owner of this article is %s",course);
  return 0;
}


Output

Owner of this article is geeksforgeeks

Example 2:

C++




// C++ Program to demonstrate
// Use of %._f
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    float Self_paced_price = 3999.0,
          system_design_price = 10999.0;
    printf("the value of system design price / self paced "
           "price is %.3f",
           system_design_price / Self_paced_price);
    return 0;
}


Output

the value of system design price / self paced price is 2.750

.3f depicts the value that should be printed within 3 decimal places.

Example 3:

C++




// C++ Program implement
// Decimal to Octal
// Conversion using '%o'.
#include <bits/stdc++.h>
 
using namespace std;
 
int main()
{
    int decimal_number = 13;
    printf("Decimal to Octal conversion of %d is %o",
           decimal_number, decimal_number);
    return 0;
}


Output

Decimal to Octal conversion of 13 is 15

Example 4: 

C++




// C++ Program to implement
// Decimal to hexadecimal
// Conversion using '%x'
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    int decimal_number = 13;
    printf("Decimal to Hexadecimal conversion of %d is %x",
           decimal_number, decimal_number);
    return 0;
}


Output

Decimal to Hexadecimal conversion of 13 is d

Example 5: 

C++




// C++ Program to
// Char to int Conversion
// and Vice Versa.
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
    int a = 78;
    printf("%c\n", a);
 
    int b = 'g';
    printf("%d", b);
    return 0;
}


Output

N
103


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads