C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML
C Format SpecifierThe Format specifier is a string used in the formatted input and output functions. The format string determines the format of the input and output. The format string always starts with a '%' character. The commonly used format specifiers in printf() function are:
Let's understand the format specifiers in detail through an example.
int main() { int b=6; int c=8; printf("Value of b is:%d", b); printf("\nValue of c is:%d",c); return 0; } In the above code, we are printing the integer value of b and c by using the %d specifier. Output ![]()
int main() { int b=10; int c= -10; printf("Value of b is:%u", b); printf("\nValue of c is:%u",c); return 0; } In the above program, we are displaying the value of b and c by using an unsigned format specifier, i.e., %u. The value of b is positive, so %u specifier prints the exact value of b, but it does not print the value of c as c contains the negative value. Output ![]()
int main() { int a=0100; printf("Octal value of a is: %o", a); printf("\nInteger value of a is: %d",a); return 0; } In the above code, we are displaying the octal value and integer value of a. Output ![]()
int main() { int y=0xA; printf("Hexadecimal value of y is: %x", y); printf("\nHexadecimal value of y is: %X",y); printf("\nInteger value of y is: %d",y); return 0; } In the above code, y contains the hexadecimal value 'A'. We display the hexadecimal value of y in two formats. We use %x and %X to print the hexadecimal value where %x displays the value in small letters, i.e., 'a' and %X displays the value in a capital letter, i.e., 'A'. Output ![]()
int main() { float y=3.4; printf("Floating point value of y is: %f", y); return 0; } The above code prints the floating value of y. Output ![]()
int main() { float y=3; printf("Exponential value of y is: %e", y); return 0; } Output ![]()
int main() { float y=3; printf("Exponential value of y is: %E", y); return 0; } Output ![]()
int main() { float y=3.8; printf("Float value of y is: %g", y); return 0; } In the above code, we are displaying the floating value of y by using %g specifier. The %g specifier displays the output same as the input with a same precision. Output ![]()
int main() { int y=5; printf("Address value of y in hexadecimal form is: %p", &y); return 0; } Output ![]()
int main() { char a='c'; printf("Value of a is: %c", a); return 0; } Output ![]()
int main() { printf("%s", "javaTpoint"); return 0; } Output ![]() Minimum Field Width SpecifierSuppose we want to display an output that occupies a minimum number of spaces on the screen. You can achieve this by displaying an integer number after the percent sign of the format specifier. int main() { int x=900; printf("%8d", x); printf("\n%-8d",x); return 0; } In the above program, %8d specifier displays the value after 8 spaces while %-8d specifier will make a value left-aligned. Output ![]() Now we will see how to fill the empty spaces. It is shown in the below code: int main() { int x=12; printf("%08d", x); return 0; } In the above program, %08d means that the empty space is filled with zeroes. Output ![]() Specifying PrecisionWe can specify the precision by using '.' (Dot) operator which is followed by integer and format specifier. int main() { float x=12.2; printf("%.2f", x); return 0; } Output ![]()
Next TopicC Escape Sequence
|