title: xprintf doesn't use stdout. How does it still print on screen?
body: <p>For a <code>C++</code> project at work I use the <code>GLPK</code> (Gnu Linear Programming Kit written in <code>C</code>). When I use some procedures in a console application there is an automatic output generated from <code>GLPK</code>.</p>
  
  <p>Now after I packed all that in a GUI I wanted to use the formerly diplayed text. So I redirected the stdout and stderr to files. (And I checked it works fine with <code>printf("Hallo World");</code> in my app).</p>
  
  <p>The problem is that the text form the <code>GLPK</code> doesn't appear in the files. After some research I saw that the statement <code>xprintf(...)</code> was used. (Honestly I don't have a clue what <code>xprintf</code> does and what the difference to <code>printf</code> is.)</p>
  
  <p>Can someone please explain:</p>
  
  <ol>
  <li>How the text is printed on the screen without stdout.</li>
  <li>How do I get the automatic generated output to a file or a stream or whatever I can handle.</li>
  </ol>