Cs Colorado Dev C++

・M ・M ・M ・M ・ オ%M コ%Z テ%M マ% I I; v + 5 + 5 XI I `I dI hI lI pI tI xI I I ・I ・I ・I ・I ・I ・I ・I I 、I ィI ャI ーI エI クI シI タI トI ネI フI ミI ヤI リI ワI ・I ・I ・I ・I ・I ・I ・I ・I I I I I I I I I I $ I ( I, I 0 I 4 I 8 I I @ I D I H I L I P I T I X I I ` I d I h I l I p I t. Codecademy is the easiest way to learn how to code. It's interactive, fun, and you can do it with your friends.

Creating 2D graphics programs under DOS is easy if you’re using [turbo c]. There is library file called graphics.h that does the tiresome work for you. But unfortunately this library is borland specific you can’t use it on other compilers.

Even though some peoples somehow managed to port it outside the turbo. Some people hacked their own version of graphics.h. One such person is Micheal main, he ported some of borland graphics functions and library.

Micheal main modified BGI library for windows application to be used under MinGW. This BGI library is renamed as WinBGIm. Now you can use all the borland specific functions under Dev-C++.

InstallationÂ

In order to run graphics programs under Dev-C++ you have to download WinBGIm files. Download the files listed below.

  • Graphics.h (download to C:Dev-Cppinclude)
  • libbgi.a(download to C:Dev-Cpplib)

Once you download the files. Now you have to place into the correct location in Dev-C++ installation folder. Try to locate include and lib folder under your dev-cpp installation. Move these files under the respective folder of include and lib. like e.g. D:Dev-cpp include & D:Dev-cpplib .

Configuration
At last step you’ve downloaded & installed the WinBGIm, now you have to configure it to use under Dev-C++. You’ve to set some project options in Dev-C++ in order to run WinBGIm references properly.
Follow the steps below to set proper project options for WinBGIm.

1. Go to the “File” menu and select “New”, “Project”,Choose “Empty Project” and make sure “C++ project” is selected. Give your project suitable name and click on “Ok”.

OR

1. You can create individual C++” source file” instead of “project”. Go to the “File” menu and select “New Source File” OR Go to the “Project” menu and select “New File”.

2. Go to “Project” menu and choose “Project Options”.
3. Go to the “Parameters” tab.
4. In the “Linker” field, enter the following text:

  • -lbgi
  • -lgdi32
  • -lcomdlg32
  • -luuid
  • -loleaut32
  • -lole32

5.Click “Ok” to save settings.
Now you’ve done with the configuration for WinBGIm. Please make sure you’ve done this step properly otherwise compiler will flag error.

Testing & Debugging

Now let’s write a small program to test how WinBGIm works. Here is the source code for the program. Type it down,save it with .cpp extension and compile and run to see the results.

#include <graphics.h>

#include <iostream>

using namespace std;

int main()
{
initwindow(800,600);
circle(200,300,600);
while(!kbhit());
closegraph();
return 0;
}

Http://cs.colorado.edu/~main/bgi/dev-c++

This is the program for displaying circle with respective parameters on window of size 800×600.This window will close when you press any key.If you’ve made settings correctly then you can view the graphics,without any problem.

What’s included ?
All the borland graphics batteries included, plus some additional written by other contributors of WinBGIm. With WinBGIm you can use most of the borlands graphics function & RGB colors. You can also use detectgraph() and initgraph() or you can use new function called initwindow(). You can even use some of the old mouse function such as int mousex() & int mousey() along with getmouseclick() & clearmouseclick(). For keyboard functions,you don’t have to include conio.h some of the functions are supported without it like void delay(int millisec),int getch( ),int kbhit( ).

If you want to capture the screen where you’ve created your graphics. You can do it with help of these functions getimage(),imagesize(), printimage(), putimage(), readimagefile() ,writeimagefile().

Help & Support
If you’re into some trouble with installation & configuration,then please post your questions here. But please don’t post homework problems or your custom projects.Google groups is the right place to get answers in such cases. You can even get lot of support with WinBGIm and Dev-C++ at Google groups. If you want to read about the WinBGIm documentation & FAQ.

If you’ve any question or suggestion then don’t hesitate to post it here.If you know any alternative than WinBGIm,please post about it here.

-->

In C++, you can exit a program in these ways:

  • Call the exit function.
  • Call the abort function.
  • Execute a return statement from main.

exit function

The exit function, declared in <stdlib.h>, terminates a C++ program. The value supplied as an argument to exit is returned to the operating system as the program's return code or exit code. By convention, a return code of zero means that the program completed successfully. You can use the constants EXIT_FAILURE and EXIT_SUCCESS, also defined in <stdlib.h>, to indicate success or failure of your program.

Issuing a return statement from the main function is equivalent to calling the exit function with the return value as its argument.

abort function

The abort function, also declared in the standard include file <stdlib.h>, terminates a C++ program. The difference between exit and abort is that exit allows the C++ run-time termination processing to take place (global object destructors will be called), whereas abort terminates the program immediately. The abort function bypasses the normal destruction process for initialized global static objects. It also bypasses any special processing that was specified using the atexit function.

Http://cs.colorado.edu/~main/bgi/dev-c++

atexit function

Www.cs.colorado.edu main bgi dev-c++

Use the atexit function to specify actions that execute prior to program termination. No global static objects initialized prior to the call to atexit are destroyed prior to execution of the exit-processing function.

return statement in main

Www.cs.colorado.edu main bgi dev-c++

Issuing a return statement from main is functionally equivalent to calling the exit function. Consider the following example:

The exit and return statements in the preceding example are functionally identical. However, C++ requires that functions that have return types other than void return a value. The return statement allows you to return a value from main.

Destruction of static objects

When you call exit or execute a return statement from main, static objects are destroyed in the reverse order of their initialization (after the call to atexit if one exists). The following example shows how such initialization and cleanup works.

Example

Www.cs.colorado.edu Main Bgi Dev-c++

In the following example, the static objects sd1 and sd2 are created and initialized before entry to main. After this program terminates using the return statement, first sd2 is destroyed and then sd1. The destructor for the ShowData class closes the files associated with these static objects.

Another way to write this code is to declare the ShowData objects with block scope, allowing them to be destroyed when they go out of scope:

See also