title: fputs and printf problem
body: <p>I got code that follows:</p>
  
  <pre><code>char* writeSpace(int i)
  {
   fputs("                              " + (30-i), stdout);
  }
  
  printf("#%i key: %s%svalue: %s%s value2: %s", id, key, writeSpace(10), value, writeSpace(8), value2);
  </code></pre>
  
  <p>my output should look something like:</p>
  
  <pre><code>#1 key: foo          value: bar        value2: foobar
  </code></pre>
  
  <p>but it isn't. it looks like:</p>
  
  <pre><code>                      #1 key: foo(null)value: bar(null)value2: foobar(null)
  </code></pre>
  
  <p>What's wrong with my code?</p>