The problem is that what is returned to the OS is then interpreted by the OS shell as IT likes it, not as your program likes.
the main function returns an int, and return -2
is just what your program has to do.
253 is -2 in 2s complement onto 8 bits.
The problem -here- is a mismatch between the C++ specs (int main()
) and the way the shell use it. But it does not depend on the program.
The assignment itself is a trap.