title: What is the use of * in printf?
body: <p>I have a this code:</p>
  
  <pre><code>#include &lt;stdio.h&gt;
  #include &lt;conio.h&gt;
  void main()
  {
      int n = 5;
      clrscr();
      printf("n=%*d", n);
      getch();
  }
  </code></pre>
  
  <p>The output which I got is: <code>n= 5</code>. Why is there a space? How is it generated? What is the use of <code>*</code> in the code?</p>