943,648 Members | Top Members by Rank

Ad:
  • C++ Discussion Thread
  • Unsolved
  • Views: 15694
  • C++ RSS
You are currently viewing page 1 of this multi-page discussion thread
Dec 20th, 2007
0

How do I retain output window in Dev-C++

Expand Post »
Dev-C++ v 4.9.9.2 IDE
When I compile and run my program as a console project, a window flashes very briefly on the screen and disappears. The compile log says compilation was successful and execution terminated.

How to I keep the window (my output window?) from disappearing?
Reputation Points: 10
Solved Threads: 0
Newbie Poster
rwkopcke is offline Offline
5 posts
since Dec 2007
Dec 20th, 2007
0

Re: How do I retain output window in Dev-C++

You have to add a line just before the end of main() to stop the program from closing. Most people call getch() or c++ cin.get(), which is just waiting for keyboard entry.
Sponsor
Team Colleague
Featured Poster
Reputation Points: 5608
Solved Threads: 2282
Retired and Enjoying Life
Ancient Dragon is online now Online
21,947 posts
since Aug 2005
Dec 20th, 2007
0

Re: How do I retain output window in Dev-C++

You may want to have a look here http://www.daniweb.com/forums/thread90228.html.

Here's a snippet you can include at the end of main(), just prior to the return statement.
cpp Syntax (Toggle Plain Text)
  1. // exit routine
  2. cout << "\n\n...Press ENTER to Exit System...";
  3. cin.get();
or, if that doesn't work, pressing ENTER and nothing seems to happen, which is most likely due to the fact that cin refuses to accept any more characters due to it being in an error state and that error needs to be erased or cleared out; try this
cpp Syntax (Toggle Plain Text)
  1. cout << "...Press ENTER to Exit System...";
  2. cin.clear();
  3. while (cin.get() != '\n')
  4. ;
  5. cin.get();
I'm still learning this stuff and most likely other more experienced forum members could better explain things. From my experience, reading up on cin and understanding why errors may occur (ie. assigning alphbetical characters to a numerical variable) will dictate what method you use.

And that's it, my first bit of advice, hope I'm on the mark.
Reputation Points: 11
Solved Threads: 3
Junior Poster in Training
superjacent is offline Offline
66 posts
since Nov 2007
Dec 20th, 2007
0

Re: How do I retain output window in Dev-C++

why should we not use system("pause");
Last edited by rajatC; Dec 20th, 2007 at 2:59 am.
Reputation Points: 14
Solved Threads: 7
Junior Poster
rajatC is offline Offline
109 posts
since Dec 2007
Dec 20th, 2007
0

Re: How do I retain output window in Dev-C++

Click to Expand / Collapse  Quote originally posted by rajatC ...
why should we not use system("pause");
You are relying upon that program (pause.exe) being available and in that particular context it's only applicable or valid for Windows. I wrote a quick 'hello world' in Linux, it compiled ok, with system("pause") but on running it this is the output:
Quote ...
>./test
sh: pause: not found
Hello World
If you do away with system("pause") then you can easily transfer your code and compile under other operating systems without having to make any modifications.

I'll re-state, I'm still learning this stuff and more experienced members might explain it better.
Reputation Points: 11
Solved Threads: 3
Junior Poster in Training
superjacent is offline Offline
66 posts
since Nov 2007
Dec 20th, 2007
0

Re: How do I retain output window in Dev-C++

i dont know this is correct or not but is there anything like this..

that when we use system("pause"); then the system remains in the wait state and is not free for any other process...but if we use cin.get(); then the system will do other processes too and will keep on checking the input stream (for any input entered by the user) after each instruction cycle of it's process...
this way the system will be able to do other processes too...it is kind of simulating many processes efficiectly making use of system's time..

@experts..
plz check is it correct or i m wrong about it..
Reputation Points: 14
Solved Threads: 7
Junior Poster
rajatC is offline Offline
109 posts
since Dec 2007
Dec 20th, 2007
0

Re: How do I retain output window in Dev-C++

Click to Expand / Collapse  Quote originally posted by rajatC ...
..@experts..
plz check is it correct or i m wrong about it..
You are wrong. system("pause"); does not pause the operating system, although I suppose someone could write an operating system in which it would pause it but it would be pretty stupid to do that.
Last edited by Ancient Dragon; Dec 20th, 2007 at 6:57 am.
Sponsor
Team Colleague
Featured Poster
Reputation Points: 5608
Solved Threads: 2282
Retired and Enjoying Life
Ancient Dragon is online now Online
21,947 posts
since Aug 2005
Dec 20th, 2007
0

Re: How do I retain output window in Dev-C++

cin.get(); works fine for compile and run. But when I choose simply to run again, after having compiled and run. The output window only flashes briefly again.
Reputation Points: 10
Solved Threads: 0
Newbie Poster
rwkopcke is offline Offline
5 posts
since Dec 2007
Dec 20th, 2007
0

Re: How do I retain output window in Dev-C++

>You are relying upon that program (pause.exe) being available
You're also relying on that program doing what you expect it to do. The problem is that one can easily replace pause.exe with another program of the same name but a malicious payload. system("pause"); isn't portable, but the real kicker is that it's a huge security hole.

>But when I choose simply to run again, after having compiled
>and run. The output window only flashes briefly again.
That sounds like an order of operations thing, though it's hard to say without knowing what compiler you use. You may be running an old version of the program that didn't have a pause at the end. Always compile before you run the program to avoid this problem.
Administrator
Reputation Points: 6442
Solved Threads: 1393
Bad Cop
Narue is offline Offline
11,807 posts
since Sep 2004
Dec 20th, 2007
0

Re: How do I retain output window in Dev-C++

Ok...thanks...
Reputation Points: 14
Solved Threads: 7
Junior Poster
rajatC is offline Offline
109 posts
since Dec 2007

This thread is more than three months old

No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Message:
Previous Thread in C++ Forum Timeline: using delete
Next Thread in C++ Forum Timeline: Maps





About Us | Contact Us | Advertise | Acceptable Use Policy
Forum Index | Build Custom RSS Feed


Follow us on Twitter


© 2011 DaniWeb® LLC