2

I am studying about printf and sprintf and I don't understand a few points. Can someone please help me understand the following format specifiers explained at sprintf():

  • An optional alignment specifier that says if the result should be left-justified or right-justified. The default is right-justified; a - character here will make it left-justified.

  • An optional number, a width specifier that says how many characters (minimum) this conversion should result in.

1

2 Answers 2

7

width specifier:

given:    printf('|%5d|', 1);
prints:   |    1|
           ^^^^^-- 4 spaces + 1 char = width of 5

alignment:

given:    printf('|%-5d|', 1);
prints    |1    |
           ^^^^^-- 1 char + 4 right-justified spaces = width of 5.
Sign up to request clarification or add additional context in comments.

Comments

2

Let's take a simple example:

<?php

$strs = "hello world";
printf("%-15s", $strs);
echo "\n";
printf("%15s", $strs);

?>

output:

hello world    
    hello world

^^^^^^^^^^^^^^^
|||||||||||||||
123456789012345  (width=15)

Here 15 is the minimum printed width of the string, and the - sign is to indent the string on the left.

1 Comment

Thank you ashwini, for your answer, have a nice day.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.