Clifford may be sincere but changing compilers won't solve your problem. C and C++ were essentially designed for the command line, and the basic libraries intentionally do not include graphics or low-level screen control which would allow you to control how long something displays. When you use iostream or cstdio you are `creating a console application, which Windows will create a console for to run. As soon as the program completes its operation, Windows destroys the console. So it is not Dev C++ which is the problem, it is how you are using your programs.
You essentially have three choices. The first is to start a console (command.exe in run programs in XP -- I don't know what it is in Vista because I despise it so much) cd over to the directory where you have the executables, and run them from the command line. It won't close and you can inspect the output at your leisure.
The second choice is use a C standard function called system (in cstdlib) and an MS-DOS program called pause.exe. You put the line in "system("pause");" right before you return 0; and pause prints the message "Press Any Key" at the bottom of the console screen then waits for you to do so before going on to the next line which terminates it.
The final choice is to demand input at the end of the program, as pause.exe does. If you use conio.h you can just do a getch() and either throw the input away or create a character which accepts it as in c=getch();. If you use a curses you can do the same thing (but if you know curses you might consider switching over to FreeBSD or Linux for your programming). Any other function is likely to leave a newline in the input buffer which can complicate things for you.
These choices will work for any compiler on Windows, as any compiler will produce programs which do the same thing. So take your pick.