I was wondering what magic does a * pointer before function actually do? Today our programming teacher asked us to look into it and explain it in the next class!
The return type of the function named binary is int *, meaning it returns a pointer to an integer. Don't let the alignment/spacing of the asterisk confuse you - different programmers align it with different spacing according to their preferences, but alignment and spacing never change the meaning of code in C++.