It's declaring an overloaded operator >>, which is done in the form of a function that takes two parameters. In the C++ idiom >> is often used for input and << for output.

Have a close look at extern ifstream &operator >> ( ifstream &in_file, complx &number ) and see what differences you can spot between:
extern ifstream &operator >> ( ifstream &in_file, complx &number )
extern istream &operator >> ( istream &in_file, complx &number )

He's already given you the code for the first, and the code for the second will be VERY SIMILAR (hint).

Question, if I gave you the following code, would you be able to complete it?
int main()
  int re=2, im=3;
  // the next line displays re and im (but is incomplete)
  cout  // ... then what?
  return 0;
If you're not sure, have another look at the "hello world" program.

What book, out of interest?