Yes, there are. The first one relies on the fact that the computer has to have a command called "pause", and I think that is the case of Windows only; Linux users cannot use that one.
The second one relies on the C++ variable std::cin and its inherent istream attributes; the third one I have never used it so I guess it corresponds to a C library that probably works the same as the second one.
getchar() reads input from the standard io.
When you press a key except enter, the system still will pause.
When you press enter, getchar() delivers a character of the entered line.
The pause will not be ended, before you have read all the entered characters of the line.
_getch() reacts immediately to a key press on the keyboard
Just one thing. As I expected, conio.h was not present in Xcode. I'm not sure if it's Windows specific or VC++ specific, but that _getch() looked wrong for some reason.
Yes, it's some function of MS C/C++, it's not standard C++, because this is a PC hardware dependent function. Maybe you could find another one in Xcode. I don't know what Apple offers.
I think Xcode C++ doesn't differ at all from Vanilla, other than the obvious fact that the arguments that the system("Command here, please"); can successfully varies from other OSs' system commands, but that's still within the realm of Vanilla C++.
The language one is pretty much forced to use for anything other than console-based programs for MACs is Cocoa, which is Objective-C based. :( But I digress.