Instalacja conio.h


(Raf20076) #1

conio.png

Cb_splash.png

INSTALACJA CONIO2.h PLUS OPIS WSZYSTKICH FUNKCJI Z PRZYKŁADAMI

Chciałbym tutaj napisać o instalcji conio2.h w Code::Blocks, jeśli ktoś używa Dev C++ http://www.dobreprogramy.pl/DevC,Program,Windows,28400.html stary Dev doczekał się w końcu kontynuacji po wielu latach przerwy, to może użyć Devpacka conio, no ale w wypadku Code::Blocks'a to są dwa rozwiązania - w Code::Blocks w czasie instalacji programu możemy doinstalować wtyczkę umożliwiającą instalację Devpacków (którą potem możemy znaleźć pod menu Plugins Devpack updater/installer lub zainstalować Conio.h ręcznie. Oto ta druga metoda w sumie też prosta.

Instalacja Conio.h w programie Code::Blocks

  1. Ściągamy Devpacka conio-2.0-1mol.DevPak z http://sourceforge.net/projects/conio/files/devpak/CONIO%202.0/

  2. ZMIENIAMY DEVPAKA NA PLIK ZIP conio-2.0-1mol.zip i następnie rozpakowujemy, otrzymamy 4 fodery,

  3. Zawartość folderu include (nie cały folder tylko pliki) (conio2.h i plik constream) kopiujemy do miejsca instalacji Code Blocks znajdź folder MinGW, następnie do folderu include skopiuj plik conio2.h i plik constream,

4.Następnie zawartość folderu lib (libconio i libconio_unicode) kopiujemy do folderu lib znajdującego się w folderze MinGW.

5.Uruchomiamy Code Block, w menu Settings**** Compile... **** Global Compile Settings **** Linker settings **** Add (dodajemy nasze conio - C:\Program Files\CodeBlocks\MinGW\include\conio.h i znów Add C:\Program Files\CodeBlocks\MinGW\include\conio2.h W opcjach z boku Other linker options wpisujemy -lconio wciskamy OK

Compiler%2520settings.png

Teraz w naszych projektach możemy używać plików nagłówkowych conio.h i conio2.h :o :o

-- Dodane 23.07.2012 (Pn) 23:29 --

Będę tutaj stopniowo dodawał kolejne funkcję z biblioteki niestandardowej conio, która zawiera przydatne funkcje obsługi ekranu i klawiatury w standardzie ANSII C pod konsolą w Windows. Mam nadzieje że komuś się przyda, chociaż większość programistów zachwyca się wodotryskami graficznymi a zapomina o czystym programowaniu, które wywodzi się z trybu konsolowego (tekstowego), chociaż może się mylę i może coś pomyliłem. Dodam że przykłady były testowane w Code::Block'u 10.5 Build May 27 2010 etc (windows unicode 32 bit) Ustawienia do conio jak wyżej, ponadto kodowanie tekstu w menu programu Settings Editor pod Encoding use encoding when opening files - wybierz Windows 1250 (chodzi żeby były polskie litery podczas pisania programów) zaznacz następnie opcje As default encoding (bypassing.., a potem naciśnij OK.

JEŚLI PO URUCHOMIENIU LISTINGÓW PROGRAMÓW NIE WIDZISZ POLSKICH LITER W KONSOLI PATRZ TEN WĄTEK http://forum.dobreprogramy.pl/kompilacja-polskie-znaki-konsoli-t304295-15.html

FUNKCJA void gotoxy (int x, int y) USTAWIA KURSOR NA EKRANIE W WYBRANEJ POZYCJI

#include 

#include 


using namespace std;


int main()

{


    gotoxy(20,20);/*void gotoxy (int x, int y) funkcja

    ustawia kursor w wybranej pozycji na ekranie

    konsoli, x - to położenie poziome, y - pionowe*/


    cin.get();//program czeka na wciśnięcie klawisza enter

    cin.get();//dzięki temu widzimy rezultat naszego programu nim zniknie

    return 0;

}

-- Dodane 24.07.2012 (Wt) 20:42 -- FUNKCJA void cputsxy (int x, int y, char * str )WYŚWIETLA TEKST NA EKRANIE W WYBRANEJ POZYCJI

#include 

#include 


using namespace std;


int main()

{


    cputsxy (10,10,"Witamy w Conio");/*funkcja cputxy wyświetla łańcuch znakowy - tekst

    w określonej pozycji na ekranie, cputsxy (int x, int y, char * str ), x - to położenie

    poziome, y - pionowe, natomiast char* str - to łańcuch znakowy ujęty w cudzysłowy*/ 


    cin.get();//program czeka na wciśnięcie klawisza enter

    cin.get();

    return 0;

}

-- Dodane 24.07.2012 (Wt) 22:33 -- FUNKCJA void textcolor ( int color ) USTAWIA KOLOR WYŚWIETLANEGO TEKSTU

#include 

#include 


using namespace std;


int main()

{

    textcolor(LIGHTBLUE);/*funkcja textcolor (int color) ustawia kolor wyświetlanego

    tekstu.*/

    //oto dostępne kolory


/*

BLACK kolor czarny 

BLUE kolor niebieski  

GREEN kolor zielony 

CYAN kolor niebieskozielony

RED kolor czerwony 

MAGENTA kolor fuksji (różowy)

BROWN kolor brązowy 

LIGHTGRAY kolor jasnoszary

DARKGRAY kolor ciemnoszary

LIGHTBLUE kolor jasnoniebieski

LIGHTGREEN kolor jasnozielony 

LIGHTCYAN kolor jasno niebieskozielony

LIGHTRED kolor jasnoczerwony 

LIGHTMAGENTA kolor jasny fuksji (jasnoróżowy)

YELLOW kolor żółty

WHITE kolor biały 

*/



    cputsxy (10,10,"Witamy w Conio");


    cin.get();//program czeka na wciśnięcie klawisza enter

    cin.get();

    return 0;

}

-- Dodane 24.07.2012 (Wt) 23:07 -- FUNKCJA void textbackground ( int color ) USTAWIA KOLOR TŁA WYŚWIETLANEGO TEKSTU

#include 

#include 

using namespace std;


int main()

{

    textcolor(LIGHTMAGENTA);

    textbackground (WHITE);/*funkcja textbackground ( int color ) ustawia kolor tła

    wyświetlanego tekstu - dostępne kolory jak w funkcji textcolor */


    cputsxy (10,10,"Witamy w Conio");




    cin.get();//program czeka na wciśnięcie klawisza enter

    cin.get();

    return 0;

}

-- Dodane 24.07.2012 (Wt) 23:31 -- PROGRAM WITAMY W CONIO - BIBLIOTECE NIESTANDARDOWEJ

#include 

#include 

#include 

using namespace std;


int main()

{

    textcolor(LIGHTGREEN);


    cputsxy (11,10,"W");

    Sleep (1000);

    cputsxy (12,10,"I");

    Sleep (1000);

    cputsxy (13,10,"T");

    Sleep (1000);

    cputsxy (14,10,"A");

    Sleep (1000);

    cputsxy (15,10,"M");

    Sleep (1000);

    cputsxy (16,10,"Y");

    Sleep (1000);

    cputsxy (17,10," ");

    Sleep (1000);

    cputsxy (18,10,"W");

    Sleep (1000);

    cputsxy (20,10,"CONIO");

    Sleep (1000);

    textcolor(GREEN);

    cputsxy (11,12,"w bibliotece niestandardowej");




    cin.get();//program czeka na wciśnięcie klawisza enter

    cin.get();

    return 0;

}

-- Dodane 26.07.2012 (Cz) 9:12 -- FUNKCJA void delline (void) USUWA LINIĘ NA KTÓREJ ZNAJDUJE SIĘ KURSOR

#include

#include

#include


using namespace std;


int main()

{

   cout "to jest tekst";

   Sleep (2000);

   delline();/*Funkcja void delline (void) usuwa linię

   na której znajduje się kursor*/

   cin.get();

   cin.get();

   return 0;

}

-- Dodane 26.07.2012 (Cz) 9:18 -- FUNKCJA void insline (void) WSTAWIA LINIĘ NA KTÓREJ ZNAJDUJE SIĘ KURSOR W tym wypadku kursor wyświetla się tuż za tekstem, więc pusta linia zostanie wstawiona w miejsce wyświetlanego tekstu, a sam tekst przesunięty o jedną linię w dół.

#include

#include

#include


using namespace std;


int main()

{

   cout "To jest tekst";

   Sleep (2000);

   insline();//

   cin.get();

   cin.get();

   return 0;

}

-- Dodane 26.07.2012 (Cz) 21:58 -- FUNKCJA void putchxy (int x,int y, char ch) WSTAWIA ZNAK (char) W PODANEJ POZYCJI NA EKRANIE

#include

#include


using namespace std;


int main()

{

   putchxy (10,10,66);/*Funkcja void putchxy (int x,int y, char ch)

   wstawia znak - znakowy typ danych (char) w wyznaczonej pozycji na

   ekranie - x -położenie poziome, y - pionowe*/

   // w tym wypadku 66 odpowiada znakowi B według tabeli ASCII


   cin.get();

   cin.get();

   return 0;

}

TABELA ASCII - American Standard Code for Information Interchange http://pl.wikipedia.org/wiki/ASCII-- Dodane 26.07.2012 (Cz) 22:09 -- FUNKCJA void putchxy (int x,int y, char ch) BEZ TABELI ASCII

#include

#include


using namespace std;


int main()

{

   //Deklaracja zmiennych


   int x = 2;// zmienna x typu int ma przypisaną wartość 2

   int y = 3;// zmienna y typu int ma przypisaną wartość 3

   char b = 'D';//zmiena b typu char ma przypisaną literę D


   //Wywołanie funkcji putchxy ze zmiennymi które zostały określone wyżej


   putchxy (x,y,b);


   cin.get();

   cin.get();


   return 0;

}

-- Dodane 26.07.2012 (Cz) 22:32 -- EFEKT Z MATRIXA SPADAJĄCYCH ZIELONYCH CYFR

#include 

  #include 

  #include 

  #include 

  #include 


  using namespace std;


  int main(int argc, char *argv[] )

  {

      int a;

      string array [42] = {"0","1","2","3","4","5","6","7","8","9","0","1","2","3","4","5","6","7","8","9","0","1","2","3","4","1","2","3","4","5","6","7","8","9"," "," "," ","?","!","#"};


      system("color 0A");

      while(1)

      {

         Sleep(10);

         for(int i=0; i400; i++)

         {

                 a=rand()%42;

                 cout" "
                 cout" ";


                 }


              cout 
              }

      getch();

      return(0);

      }

-- Dodane 27.07.2012 (Pt) 23:46 -- KOLEJNY PROGRAM W STYLU MATRIX

#include

    #include

    #include



    using namespace std;


    int main()

    {

        textcolor (LIGHTGREEN);//ustawia kolor tekstu


       //Deklaracja zmiennych



       char b = 'W';//zmiena b typu char ma przypisaną literę D

       char c = 'I';

       char d = 'T';

       char e = 'A';

       char f = 'J';

       //Wywołanie funkcji putchxy ze zmiennymi które zostały określone wyżej


       putchxy (5,5,b);

       Sleep (500);

       putchxy (6,5,c);

       Sleep (500);

       putchxy (7,5,d);

       Sleep (500);

       putchxy (8,5,e);

       Sleep (500);

       putchxy (9,5,f);

       Sleep (500);

       cputsxy (10,5," NEO");

       Sleep (1000);

       cputsxy (5,6,"TUTAJ MORFEUSZ");


       char m = '.';

       putchxy (20,6,m);

       Sleep (300);

       putchxy (21,6,m);

       Sleep (300);

       putchxy (22,6,m);

       Sleep (300);

       putchxy (23,6,m);

       Sleep (300);

       putchxy (24,6,m);

       Sleep (300);

       putchxy (25,6,m);

       Sleep (300);

       putchxy (26,6,m);

       Sleep (300);

       putchxy (27,6,m);

       Sleep (1000);

       cputsxy (28,6,"TO");

       Sleep (1000);

       cputsxy (30,6," CZEGO");

       Sleep (1000);

       cputsxy (36,6," SZUKASZ JEST TUTAJ");

       Sleep (1000);

       cputsxy (5,7,"CZY WIESZ CO TO JEST?");

       char n = 'M';

       putchxy (5,8,n);

       Sleep (2000);

       char q = 'A';

       putchxy (5,8,q);

       Sleep (2000);

       char u = 'T';

       putchxy (5,8,u);

       Sleep (2000);

       char r = 'R';

       putchxy (5,8,r);

       Sleep (2000);

       char t = 'I';

       putchxy (5,8,t);

       Sleep (2000);

       char i = 'X';

       putchxy (5,8,i);

       Sleep (2000);


       cputsxy (5,8,"MATRIX");

       Sleep (1000);

       cputsxy (12,8,"SYSTEM IS READY ");

       Sleep (1000);

       cputsxy (28,8,"SEARCHING MORFEUSZ..");

       cputsxy (49,8,"MOR ");

       Sleep (1000);

       cputsxy (49,8,"FEUSZ");

       cputsxy (49,8,"MOR ");

       Sleep (1000);

       cputsxy (49,8," ");

       textcolor(LIGHTRED);

       cputsxy (5,10,"MORFEUSZ POSITION 230934fd7UEYD");

       Sleep (1000);




       cin.get();

       cin.get();


       return 0;

    }

-- Dodane 28.07.2012 (So) 23:30 --FUNKCJA void movetext (int left,int top,int right,int bottom, int destleft,int desttop) KOPIUJE ZAWARTOŚĆ (TEKST) Z JEDNEGO PROSTOKĄTA DO DRUGIEGO PROSTOKĄT W KTÓRYM ZNAJDUJE SIĘ TEKST (ŁAŃCUCH ZNAKOWY) ZAKREŚLAMY W TEN SPOSÓB ŻE RYSUJEMY GO ZACZYNAJĄC OD POZYCJI - left od lewego górnego roku ekranu - np punktu 2, następnie lecimy od 2 w dół do punktu np 3 - POZYCJA top , w ten sposób mamy już jeden róg prostokąta zaczynający się od 2 left i 3 top , następnie od 3 top rysujemy linię w prawą stronę do punktu numer 11, POZYCJA right , następnie kolejną linię od komórki 11 w dół do punktu numer 5 , POZYCJA bottom - patrz rysunek Oto nasz GOTOWY prostokąt movetext (2,3,11,5). Do tych współrzędnych trzeba dodać współrzędne gdzie prostokąt o wyżej podanych wymiarach zostanie skopiowany, czyli POZYCJE destleft i desttop - nasza funkcja movetext (2,3,11,5, destleft, desttop) Nasz skopiowany prostokąt umieścimy w pozycji zaczynającej się od 2 destleft i 10 desttop w ten sposób mamy wyznaczony punkt od którego nasz skopiowany prostokąt się wyświetli na ekranie. Nasza funkcja movetext (2,3,11,5, 2, 10); NASZ PROSTOKĄTMOVETEXT.jpg