The format specifiers are used in C for input and output purposes. Using this concept the compiler can understand that what type of data is in a variable during taking input using the scanf() function and printing using printf() function. Here is a list of format specifiers.
Format Specifier | Type |
---|---|
%c | Character |
%d | Signed integer |
%e or %E | Scientific notation of floats |
%f | Float values |
%g or %G | Similar as %e or %E |
%hi | Signed integer (short) |
%hu | Unsigned Integer (short) |
%i | Unsigned integer |
%l or %ld or %li | Long |
%lf | Double |
%Lf | Long double |
%lu | Unsigned int or unsigned long |
%lli or %lld | Long long |
%llu | Unsigned long long |
%o | Octal representation |
%p | Pointer |
%s | String |
%u | Unsigned int |
%x or %X | Hexadecimal representation |
%n | Prints nothing |
%% | Prints % character |
These are the basic format specifiers. We can add some other parts with the format specifiers. These are like below −
A minus symbol (-) sign tells left alignment
A number after % specifies the minimum field width. If string is less than the width, it will be filled with spaces
A period (.) is used to separate field width and precision
Live Demo
#include <stdio.h> main() { char ch = 'B'; printf("%c</p><p>", ch); //printing character data //print decimal or integer data with d and i int x = 45, y = 90; printf("%d</p><p>", x); printf("%i</p><p>", y); float f = 12.67; printf("%f</p><p>", f); //print float value printf("%e</p><p>", f); //print in scientific notation int a = 67; printf("%o</p><p>", a); //print in octal format printf("%x</p><p>", a); //print in hex format char str[] = "Hello World"; printf("%s</p><p>", str); printf("%20s</p><p>", str); //shift to the right 20 characters including the string printf("%-20s</p><p>", str); //left align printf("%20.5s</p><p>", str); //shift to the right 20 characters including the string, and print string up to 5 character printf("%-20.5s</p><p>", str); //left align and print string up to 5 character }
B 45 90 12.670000 1.267000e+001 103 43 Hello World Hello World Hello World Hello Hello
我们可以以相同的方式使用这些格式说明符来使用scanf()函数。因此,我们可以像上面打印的那样从scanf()中获取输入。
The above is the detailed content of Format specifiers in C language. For more information, please follow other related articles on the PHP Chinese website!