title: What exactly does this OpenCV program do?
body: <p>I want to know exaclty what this program does:</p>
  
  <pre><code>#include &lt;iostream&gt;
  #include &lt;cv.h&gt;
  #include &lt;cxcore.h&gt;
  #include &lt;highgui.h&gt;
  using namespace std;
  int main(int argc, char* argv[])
  {
  printf("Hello world\n");
  IplImage *img = cvLoadImage("C:/Program Files/OpenCV/samples/c/lena.jpg");
  // Create a window
  cvNamedWindow( "result",
  CV_WINDOW_AUTOSIZE // allow window to resize to fit image true size
  );
  cvShowImage( "result", img ); // Show image in window already created
  // Wait for a keystroke. If a positive argument is given, it will wait for
  // that number of milliseconds and then continue. If 0 is given, the
  // program will wait indefinitely for a keypress.
  cvWaitKey(0);
  // Clean up (not really necessary, but good programming practice)
  cvReleaseImage( &amp;img );
  cvDestroyWindow("result");
  system("PAUSE");
  return EXIT_SUCCESS;
  }
  </code></pre>
  
  <p>The reason i'm asking is because I think that a picture is supposed to pop up when I run the program but instead for me, a grey box pops up.</p>
  
  <p>Can someone please shed some light on this problem of mine? Thanks in advance.</p>