• Advertisement
Sign in to follow this  

Forcing a console for debugging in C?

This topic is 3054 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I am programing a glut-opengl program, and for some reason i dont get a console that i can use for debugging, I get a screen that gives me the oopengl image but i also want a console to printf to.?what am i doing wrong( how do i force a console that i can print to)?

Share this post


Link to post
Share on other sites
Advertisement
Compile your application as a console application. That's how you get a console.

Share this post


Link to post
Share on other sites
Assuming Windows: AllocConsole().

Call it once at startup and use WriteConsole() to write to it. The handle you need can be obtained by calling GetStdHandle() with an argument of STD_OUTPUT_HANDLE.

Sample code:


AllocConsole();
HANDLE consoleHandle = GetStdHandle(STD_OUTPUT_HANDLE);

...

// This is using a non-wide string. You may want to use WriteConsoleW if you need extended characters.
WriteConsoleA(consoleHandle, "Hello World", strlen("Hello World"), NULL, NULL);



Share this post


Link to post
Share on other sites
Quote:
Original post by Kuraitou
Assuming Windows: AllocConsole().

Call it once at startup and use WriteConsole() to write to it. The handle you need can be obtained by calling GetStdHandle() with an argument of STD_OUTPUT_HANDLE.

Sample code:

*** Source Snippet Removed ***



AllocConsole();

freopen("CONOUT$", "w", stdout);
freopen("CONOUT$", "w", stderr);
freopen("CONIN$", "r", stdin);





with this he'll be able to use printf or cout

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement