Format Specifiers
Format specifiers are used together with the printf() function to print variables.
You can think of a format specifier as a placeholder that tells C what kind of value will be printed.
A format specifier always starts with a percentage sign %, followed by a letter.
For example, to output the value of an int variable, use the format specifier %d surrounded by double quotes (""), inside the printf() function:
Example
int myNum = 15;
printf("%d", myNum); // Outputs 15
Note: How it works:
%dtells C to expect an integer value, andmyNumprovides that value.
Different data types use different format specifiers:
Example
// Create variables
int myNum = 15; // Integer (whole number)
float myFloatNum = 5.99; // Floating point number
char myLetter = 'D'; // Character
// Print variables
printf("%d\n", myNum);
printf("%f\n", myFloatNum);
printf("%c\n", myLetter);
To combine both text and a variable, separate them with a comma inside the printf() function:
Example
int myNum = 15;
printf("My favorite number is: %d", myNum);
To print different types in a single printf() function, you can use the following:
Example
int myNum = 15;
char myLetter = 'D';
printf("My number is %d and my letter is %c", myNum, myLetter);
Tip: Each format specifier must match the correct type of value. You will learn more about data types later in this tutorial.
Print Values Without Variables
You can also print values directly without storing them in variables, as long as you use the correct format specifier:
Example
printf("My favorite number is: %d", 15);
printf("My favorite letter is: %c", 'D');
Note: Using variables is usually better, because the value can be reused and changed later.