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
|